made file reading in the context of subtypes work; moved the prettyString method into a common interface and the implementation to the respective implementations