As preparation for D14, D1918 started computing paths at the end of a turn and not at the beginning of a new one.
However, this changed the relative position of UpdateGrid() to be "before start-of-turn computation" to after.
This makes it possible, since D1918, to compute paths with a dirty pathfinder grid (since it's been modified, but will be updated on the start of the next turn). Deserialized games (i.e. rejoins) don't have this dirty grid since they recompute it from existing obstruction data.
The solution is simply to update the grid at the end of a turn, before computing paths. Since obstructions still can't change between turns, this is good to go.
For safety, subscrite to MT_Create and UpdateGrid(), but this ought to be called by the changing terrain at game start anyways.
Also clean up pathfinder subscriptions.