Add in toString() for debugging purposes
Add in support for mood subclass
Tidy up the deserializer a little