Completed OOP Homework