Suppress a compiler warning.
Type cleanliness and constification. All regression tests pass.
Make blob directory cleanup independent of our blob naming scheme.
Preparing to change blobfile naming scheme; blobfile() now gets a basename.

All regression tests pass.
switch to *_unlocked stdio calls for the stage-3 char-by-char copy

Avoid involving glibc's internal stdio per-operation locking for the
char-by-char (!!) copying of the blob files to stdout.  By the time
this code is invoked, only the main thread remains anyway.  (Through
some mechanism, the process just simply having run threads in the past
appears to cause glibc to switch the rest of the process lifetime into
more rigorous locking stdio ops.)
More efficient file copy to stdout.  All regression tests pass.
Port changes for environments where the stock Bison isn't new enough.
A step towards getting rid of the problematic yyscan_t declaration.
More port cleanups.
Polish a test production.
Move export-file-name processing to whereit won't be a hot spot.

All regression tests pass.
Be clearer about using the glibc *_unlocked functions.
Put export-name generation at a more fitting place in the workflow.

All regression tests pass.
Make the signature of analyze_masters() less ugly.

All regression tests pass
Fold striplen into the analyzer options.
A step towards eliminating the seqno mutex.
Shameless micro-optimization.  All regression tests pass.
Lighten the parser a biy by condioning out unneeded code.
Avoid using yyin, this is a re-entrant scanner,  All regressiopn tests pass.