Added a catalog page, fixed the layout, did functional testing of controllers, and added caching