Added a ranged enemy, which involved adding an IEnemy interface.

Also did a bit of miscellaneous cleanup in Entity and derived classes.
Fun with merging.

Hopefully I didn't break anything; turns out we both made edits in TurnManager.