The Singleton pattern - explained