Alternate post title is written with apologies to Vicent Price. When working with any technology that requires a contract driven approach, like WCF, there is often a need to serialize and deserialize objects if they don't come from a well know source