splitting out controllers, cleanup