Is it just that it's easy to throw a hash-based object at the caching modules for serialization? Whereas with an inside-out object, you'd have to explicitly write freeze/thaw routines?
Yes. In theory, you could add something to Class::Std that works with Storable's hooks, but I don't think it's there already.