-added more classes
-wrote an interface for the Model