How to: convert any class to a Singleton with a template wrapper in C++