separated controllers from view completely