This class allows you to easily lock resources in a multi-threaded environment.
This class ensures that memory is allocated and freed correctly and eases the normally tedious task of tracing memory leaks.