abstract MVC super classes