Temp
Enemy and EnemyStateMachine abstractions to make coding easier