Change singletons to instantiate locks per-class
Change singletons to instantiate locks per-class

Before it was creating one for any singleton object, resulting in
Bad Things (infinite lock) happening when one singleton object
instantiates another singleton object in its instantiation. (I hope
that made sense...)

ATRAN2/fureon