Typo fix.
Added hacking.asc.  Polished some comments.
Remove a dangerous assumption, preventing a possible future buffer overrun.
Avoid duplicative code.  All regression tests pass.
Fix a potentially dangerous off-by-one.
Reorganize code to make some internal boundaries clearer.
More shuffling of module boundaries to make some internal separations clear.

All regression tesrs pass. Coverity and cppcheck scans are clean.
Fix embarrassing Makefile typo.
agic number elimination.
More internals documentation.
Refactoring step - isolate CVS analysis code.  All regression tests pass.
Further isolate the CVS analysis code.
More analysis isolation.  All regression tests pass.
Reduce some variable scopes.
Constrain and document the program's exit status values.
Rename a sourcefile for clarity.
Eliminate a grubby global reference.
Previous commit was slightly wrong.  Fix it. All regresion tests pass.
Information hiding.  All regression tests pass.
Readability.