Fixed better abstraction for Player/Enemy/IEntity -> AbstractEntity
Abstracted Player/Enemy/IEntity into AbstractEntity with shared chunks of code in the abstract class.
Abstracted Player/Enemy/IEntity into AbstractEntity with shared chunks of code in the abstract class.