added Functor, ringBuffer and Singleton classes