Polymorphic serialization and de-serialization.

could we use more descriptive type names?  What is a type C and what is a type T