added some xml serialization
implemented xml deserialization