Add ability to set the logger.
Update Sync handler to use a RWLock. This allows multiple Gets to be
used simultaneously in different threads. Also added some internal
routines to allow for the creation of the HotSwap handler.
Implement the HotSwap handler - a handler that allows you to safely hot
swap the handler at runtime in a multithreaded environment.