Singleton.py added to tackle the stupid global variable used everywhere
tried to use Singleton decorator, but doesn't work with multiple threads
Merge branch 'master' into ThreadSingleton