Create a varying 2-D field of perlin noise to act as potential field
Compute differential vector field from potential field and display
magnitudes of vectors as brightness with some added randomness to hide
some grid-like artifacts.
Add in particles that move according to velocity vector field
Give particles a lifetime and teleport them randomly at end of life to start over
Color particles via a heatmap indexed by particle speed
Make particles 4 pixels big
Fix bug that x and y were transposed for velocity field.
Fiddle with particle speeds
fix negated y velocity bug
Make screen bigger and particles bigger