Changed Singleton GoF pattern. To thread local factory