Added multiton thread-safe creation
Added thread-safety to singleton instantiation
Renamed 'singleton' protocol to 'multiton' protocol