Changed implementation of data to use private data fields and a private
dataToString method because type checking was driving me bananas