Moved check for property existence onto property map
Implementation of Object methods on KindDefinition && PropertyDefinition
Added hashCode method to KindDefinition
Changed kind toString()

Added `==` and `hashCode` implementations to _ListPropertyDefinition. Should be removed when static methods are const-able