consolidate controllers, setter functions, testing with comments