Small MVC-like structure