added abstract toString() methods to abstract classes