Added name to constructor and an abstract toString method for use with the text interface.
Added toString methods and updated the constructors.
Miscellaneous updates