polymorphic inheritence homework... almost complete. need to add a few things