Changed type hierarchy, inheritance -> aggregation (decorator).
Now serialization finally works! (ProtoBuf-net, Bson/Json, Binary, DataContract)