Added controllers, time functions, and generic components