refactored base entity to store its own position