Improve #line tracking and add #line resetting to C++ codegen
Use out-of-line method definitions for C++ target

To avoid issues with incomplete types, etc. Methods are still "inline"
until non-header-only support is added.
Use node types for default values in C++ codegen options
Add scripts and generated test files

eeeek.ast makes each node (except the top node) subclass from the one
before it. Since it uses deep recursion the test count must be throttled
at some number (TBD). This one is super slow.

ooooook.ast makes a distince node that doesn't subclass any nodes for
some number in the test script. This one should be relatively quick.

TODO: use these (and others) for profiling later.