separate behaviour from entity
erase Entity's polymorphism through SomeEntity