Merge pull request #1620 from RosettaCommons/roccomoretti/normalize_singletons
Normalize Singletons
Singletons in Rosetta should derive from utility::SingletonBase. This centralizes the singleton logic, so we can make sure it's threadsafe, etc. It also labels them clearly, so we can keep track of the classes with Global state, and make sure they're not doing anything they're not supposed to.
There were a number of singleton classes in Rosetta that hadn't yet been converted to the SingletonBase scheme which I noticed during the fixes for pull request #1604. (This is an offshoot of that branch.) This converts most of them to the new scheme.