I did not apply the logic of "state entry handles its own moving" completely, namely when chasing other entities, which lead to the chasing weirdness. I also missed an interface argument in Repair.
Also remove more dead code in Gathering, since in case the target entity has available supply but we can't move to it (which basically can't happen unless perhaps we garrison said resource? And then not sure), we should just follow the pattern below instead of trying to Approach a unit that we for sure can't reach.
Related to D1964 - which fixes a symptom, not the cause in this case, but would still be useful to apply to unitAI in general I think.