Updated interface and serialiser so that they are now concreate types
(Hashes of String/objects).
Added concrete class for all other interfaces.
Added XMLEncode flow for GetData (flush still needs to be updated and
generally the serialiser needs to be cleaned up).