classes from assignment 3 + given classes. no view controllers.