more MVC split/refactor