External TCXO & sleep bugfix

With an external clock such as the DS32kHz TCXO, voltage would not
stabilize sufficiently for the repeated analog-to-digital measurements
of battery voltage during sleep to converge.  As a result, the
analog-to-digital converter would run continuously and drain the
battery in a short amount of time--around thirty minutes.

To resolve the issue, the voltage measurement algorithm now uses a
looser criteria for convergence and enforces a maximum number of
analog-to-digital conversions.
Minor documentation updates in code and docs

The documentation incorporates loads of minor revisions--almost
exclusively typographical and grammatical corrections and revisions.

In the code, the tunable parameters for low battery detection are now
documented with comments and have been moved from system.c to
system.h.
Drift correction algorithm now tunable in config.h

A drift correction constant may now be specified at compile time in
two ways.

First, the drift correction value may be preloaded.  In this case,
the clock will still calculate how fast or slow it's running when the
user corrects the time.  This will allow the clock to refine the
preloaded drift correction value and automatically adapt to frequency
changes as the crystal ages.

Second, the drift correction value may be defined as a constant, in
which case the clock will always use the drift correction value
defined at compile time.  This feature also allows drift correction to
be disabled, as a drift correction value of zero means that no drift
correction should be performed.

The comments in config.h describe how to use these options.
New rolling colon separators

Two new rolling colon separators have been added: a falling bar and
a blinking colon (blinking top and bottom segments).
Merge branch 'config-autodrift'
Documentation updates

The TROUBLESHOOTING section in the firmware README now describes the
flaky segment problem.  Other sections and the main README incorporate
minor edits.
Merge branch 'master' into russell