implenenting MVC