Cleaned up Entity and subclasses