Refactored MVC