make sure we get the expected object type when deserializing cache
build the serialization version check into the serialized data itself

rather than using the filename to differentiate between versions

also, add a mechanism to support serialization schema changes
while maintaining backwards compatibility with specific versions
bump cocoapod version