first pass at cleaning up GK bot.

Notes so far:
nRequiredCorpses, nApocalyseUseTime, nOneCorpseTossUseTime all changed to object. While locals stored as upvalues (as done here) are ligit Lua, they can easily be globals if misused, which pollute the global Lua environment

multiple cases of "if * then return end" on one line instead of on multiple lines

core.unitSelf.tEnemyPosition -> object.tEnemyPosition since it makes no sense to store that data there
changed the check for visibility in funcGetEnemyPosition to acutally use core.CanSeeUnit() as opposed to the GetPosition(), which includes the prediction as well

Why is the failure case for funcGetEnemyPosition a vector (20000, 20000) instead of nil?
* TODO: fix these to use nil and detect that return in the calling functions

made some code in CustomHarassUtilityFnOverride more readable

moved the stun logic in HarassHeroExecuteOverride to inside the bCanSeeUnit check since they need to see the unit to use that abil
rearranged some of the sheepstick variables to only create them in the scope that uses them
changed the logic of subsequent actions to match the same structure of the first one

TODO: Either update the LH code or bring the LH code into the general behavior, and override the damage portion in GK to include the defile damage

TODO: Separate CollectCorpses into its own behavior