Things to do for the vortex2d code:

 - linked lists for elements (necessary?)
   pro: elements are the innermost loop
   con: they need to be indexed to make up the solution matrix

 - merge elements (vortexes, especially) that move close enough
   to each other that they act essentially as one. The distance
   should be no more than a small fraction of their respective
   characteristic radii

 - initial particle distributions, according to either
   formula or input PGM mask
 - allow for input of a color image (PPM) and creation of
   colored particles from it...that way I can make a 
   picture get blown away!
 - support for colored particles...another linked list
 - environmental particle creation, according to rules,
   such as areas of high vorticity, or high speed.

 - add support for "inerticles," particles with in inertia
   term and an aerodynamic drag term (or just a ballistic
   coefficient), and yet another linked list

 - add support for solid objects: they should be
   composed of a sufficiently dense surface of fixed
   vortexes that move with the object
 - matrix solution for those impenetrable objects
 - shedding vortexes off those objects (tough)

 - have generators allowed to attach to objects and move
   with them. So, then, objects need not be physical
   paneled things, they may just be a particle generator
   carrier

 - create an input file format that looks like EDS, or VRML
   { generator { type vortex_blob } { on_time 0.0 } etc... }
   hold off on this one for a while!

