cleaned up the controller and described more tests