Replaced get_exposed_classes() with the dict EXPOSED_CLASSES

- Type and Key are now subclasses of object
- EntityEnumerator.enum_entity is now a pure virtual