Removed all loose class specific references. Replaced with abstract superclass definitions