added controller and associated model