Re-building an MVC framework