This should make it easier to work with threads. It provides classes for mutexes and condition variables. Additionally, there is a special CMutexGuard that automatically unlocks the mutex on destruction and a CThreadPool class. This thread pool is used to replace the thread pool in the sockets code. Signed-off-by: Uli Schlachter <psychon@znc.in>