Adding hash function to SceneInterface

I've added a hash function with an enum that computes different kinds of hashes (for Object, Transform, child names, etc) for a given point in time.

This will allow better use of caching mechanisms when loading scenes as well as use of instances in engines such as Gaffer.

Right - that makes sense, and is the way we pass through objects in Gaffer nodes. I was asking if more generally it made sense to hash in the TypeId in the base class implementation, tell the derived classes to call the base, and then special case the LinkedScene to assign directly to the hash instead of doing that. That would match the patterns we have elsewhere.