Started on a subclass/superclass hierarchy of components