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.

Well if you've got a couple of instances of a scene cache coming from a linked scene, and then you make a scene reader to add another one, you'd want to save a bit of work by giving the meshes the same hashes. Dunno if that's a good example use case, but if it's the same data you wanna try and give it the same hash innit.