create MVC structure and test first