added cache, controllers, etc