Added GameRegistry.UniqueIdentifier.hashCode()

GameRegistry.UniqueIdentifier changes:

1. Added hashCode() to allow use as keys in HashMaps, etc.
2. Class set as final to prevent subclassing.
3. Updated equals() to use instanceof, which is safely done due to #2