* Added :attr:`~.number_of_colors`, which tells you how many colors the
terminal supports.
* Made :attr:`~.color`\(n) and :attr:`~.on_color`\(n) callable to wrap a
string, like the named colors can. Also, make them both fall back to the
``setf`` and ``setb`` capabilities (like the named colors do) if the
termcap entries for ``setaf`` and ``setab`` are not available.
* Allowed :attr:`~.color` to act as an unparametrized string, not just a
callable.
* Made :attr:`~.height` and :attr:`~.width` examine any passed-in stream
before falling back to stdout (This rarely if ever affects actual behavior;
it's mostly philosophical).
* Made caching simpler and slightly more efficient.
* Got rid of a reference cycle between :class:`~.Terminal` and
:class:`~.FormattingString`.
* Updated docs to reflect that terminal addressing (as in :meth:`~location`)
is 0-based.