Added TypeUtils and Singleton<T>; Drafted WeakMemoryCache