Finished performance testing today. Looks a lot better.
Red is the time it takes to run handleTokenMovement in v2. Blue is the time it takes to run it in v1.23. This represents how much time the code spends calculating auras at each step along the token's path.
https://i.imgur.com/iIITFjH.png
For those interested in how I measured this, I queued up locked movement like this:
https://i.imgur.com/5IcYudD.png
Then I used this performance measuring code to send time measurements to the console.

