Implemented merging a KiteGoal into the Goal list when an enemy is adjacent.
KiteGoals are only worked on when the agent is currently working on an OccupyJob.
The agent is supposed to drop its OccupyJob if an anemy is still adjacent after having kited for ~3-4 turns.
KiteGoal now an int descirbing how many turns it has been since an enemy was seen. If a kiting agent does not see an enemy adjacent to it this turn, but there was one this turn, it will recharge and see if the enemy catches up. If the enemy does not, the agent will abandon its KiteGoal and go back to occupying. This is implemented as a numeral — not a boolean — so that we can tweak the behaviour in the future.