tidy up controllers, create login services