Document the toposort
Use interned cvs_number pointers

It seems more natural once we've interned the cvs_number pointers
to use them as keys in the hash table as well as passing things
as pointers instead of by value.

Also separate out two functions that play with the version keys
I'm not sure they are used any more.
Add warning about 32-bit machines.
Remove dead code.

The dead code consisted of these functions, which abstracted out code
inlined in node_for_cvs_number():

static const cvs_number *
key_munge1 (const cvs_number *const k)
{
    cvs_number key;
    memcpy(&key, k, sizeof(cvs_number));
    key.n[key.c - 2] = key.n[key.c - 1];
    key.c--;
    return atom_cvs_number(key);
}

static const cvs_number *
key_munge2 (const cvs_number *const k)
{
    cvs_number key;
    memcpy(&key, k, sizeof(cvs_number));
    key.n[key.c] = 0;
    return atom_cvs_number(key);
}

And these calls to them:

    if (k->c > 2 && !k->n[k->c - 2])
	k = key_munge1(k);

    if (k->c & 1)
	k = key_munge2(k);

To understand why this code was necessarily dead, first look at the
indexing in key_munge(2), where the slot beyond the end of the valid
span is what is modified.  At one time possibly the indexing in
cvs_number structures was 1-origin and this code made sense.

key_munge_1() actually makes more sense.  It turns a CVS sticky tag
into the corresponding branch prefix. But node_for_cvs_number() is
never called on sticky-tag values.

All regression tests pass.
Better explanation of the twicedead bug.
Verbosity reduction. All regression tests pass.
Document troubleshooting better.
Added -n option to cvsconvert.
Documentation polishing.
Document the problem with -C order.
Add a useful explanatory comment.
Improved cvsconvert cleanup.
Typo fix.
Back out some recent chans to cvsconver cleanup.  They were confused.
Imprive testlifter's messages on failed commands.
Housekeeping.
Fix some minor bugs in testlifter initialization and cleanup.

All regression tests pass.
Add a useful comment and fix executable bits.
Use junkbranch filtering in cvsconvert.
Fix broken file comparison in the test framework.

This explains an odd glitch in the t9602 results I noted a while back.
Credit to Robert de Bath for noticing the problem.

All regression tests pass.