simple MVC with dependency injection