initial implementation of MVC engine