How can I use different property names for serialization vs deserialization? - C#