add basic MVC structure using repository pattern