Various cleanups found by Tom Sparrow's static analysis.
Make CLEANUP transitions work, so multiple NEWTOY() can exist in the same file.

Don't #undefine TT in the CLEANUP blocks of generated/flags.h, and #ifdef
around the other TT definition. That way you can put a union at the start
of your GLOBALS() with the arguments filled out by option parsing, and then
have multiple main() functions with different argumetns and different
FLAG_x macros, while sharing infrastructure that's not under lib.