Wait, disgregard that comment. I got confused in the design between the controller level (where it's all CanvasRostersController) and the model (where you have a CanvasRosters model and a CampusRosters model). That tells me that the whole distinction between CanvasRosters and CampusRosters is kind of bogus. 

Please refactor so that Rosters are 1 controller and 1 model line that can be in either "canvas" or "campus" mode. That will address the design confusion and the duplication concerns.