did a lot more renaming, putting eqns first then solver second, and making sure every eqn-specific solver said so.  pushed the getting of program sources into its own inherited function so subclasses could put content on the beginning (defs) or end (files) -- specifically for ADM which is going to introduce its own macros from the lua script.  this meant adding a separate init function for after the vtable was built.  I'm still going back and forth on splitting off 1D, 2D, and 3D cases, or merging Solver3D and Solver, or separating all state variables out into solver-specific structures.