polymorphism part 2
fixing tests and renaming EntityDefinition
renaming classes