Drop in Async.legacy
Ignore some local files and add optimised scheme.
Initial tinkering.
Remove redundant code.
Move getIndex into same file for better optimisation.

From about .45 s to .37s. First real improvement seen.
Fixing up the indexing.

Column loop should be inner loop give the structure of the array for
better memory locality.
Fix getIndex row.
Kind if working with diagonal streak effect.

Something isn’t calculating using proper indexes.
Fix loop indices and make size flexible.
Pulling out struct methods to global

Ensuring all variables are passed as args. Starting the process of
removing global mutable state.
Performance cost from globalising swap but...

I intend to eliminate all need for swap at a later stage.
curlf move sped things up substantially I think.
Continued parameterisation/globalisation.
Completion of parameterisation and globalisation of functions.

Now ready to measure and optimise.
Modest gain from non global uOld/vOld.
Simplifying and converting to call and return.
I believe that this is equivalent.
velocity solve now pure function.
More correct output but still falling to bottom right.
Make clear that u/vOut is new and not based on u/v.
Unchecked for the performance boost.