This diff moves the logic for gathering from UnitAI to ResourceGatherer. It would make it easier to allow modders to let e.g. structures gather resources.
- There are two timers per entity now, the one in UnitAI can be removed by allowing entities to keep facing towards their target.
(See also #4293.)