== Thread-safety ==

 All components used in multiple threads must be thread-safe. (This mainly concerns assertions.)

 The checkpoint mecanism used by the assertions used a static variable. It was made thread-safe by the use of thread local storage. To achieve this, a minimal portable thread api is embedded in CppUnit2.

 The smart-pointer reference counter needs to be thread-safe.

 Care must be taken when manipulating std::strings across thread as they often use non-thread-safe reference counting.

 Notes: WIN32 implementations for this are done. pthread & MacOS implementations need to be done.  (Mac OS X uses pthread for its threading model)
