Canonicalise whitespace -- USE -b/-w TO DIFF/BLAME ACROSS THIS COMMIT

Expand tabs as spaces; hard tab characters are no longer to be used
as there is disagreement as to how many columns they should expand to.
Remove trailing whitespace at the end of lines.

After this commit, please do not commit hard tab characters or trailing
whitespace in .c, .h, .pl, or .sh files, and please consider using a
pre-commit hook in your local repository to enforce this.

These steps will minimise the incidental whitespace changes unrelated
to the intended commit changes that make viewing diffs and merging
less convenient.

To compare files prior to and after the whitespace discontinuity of
this commit, use "diff -b" or "diff -w", "blame -w", etc.

(This does not apply to kaln.[ch], kprobaln.[ch], or misc/md5.[ch].
These files are in theory synchronised with other projects, so minimising
differences with copies of this code elsewhere is more important.  Please
avoid accidental incidental whitespace changes in these files too.)