Reinventing the MVC-shaped wheel