Added classes to be able to use the MVC design pattern