Fixes a bug in get_format and adds has_format

get_format could fail in weird ways because it would check if 'get_format' was a valid format.
This fix simply ignores the last two entries in the ``__all__`` list ('get_format', and the just added 'has_format')
to prevent this issue. An alternative solution could be to use introspection.

has_format returns a boolean as to whether the passed in format would work or not.
Adds a builtin __format__ method to Units

The format method can accept a format specifier name, and calls that formatter instead.
If the specifier does not correspond to a valid unit formatter, then the generic string version is used,
and the format code applied to that generic string.
A more robust get_format method

get_format would fail when a format didn't exist, as __all__ contained the function get_format itself.
This squashes that bug using inspect.isclass instead of a cludgy slice of __all__
Fixes __format__ check for existing formats

Thanks to @mdbooms suggestion, I realized I fixed a single bug, but
added some poor code for others. This relies on error catching in
__format__ to determine if a specified format exists or not, instead
of a new `has_format` method
Documentation for Unit formatting code specifiers

Units can use format codes in new-style format strings to set the desired formatting builder.
Adding formatting to CHANGES.rst
Adding units.format.FORMATS

It is a list of formats that can be found by get_format()
Changed documentation link to a hardlink.
Changed the document title of units/format.rst
Removed the paragraph on Unit.to_string
Language tweaks in units format documentation
Better grammar for CHANGES.rst units
Tests for new-style units formatting
Changing units.tests.test_format to not mask builtin format
Using the builtin-format method for test.
Adding information about ``to_string``
Revert "Changed the document title of units/format.rst"

This reverts commit dff86f70e04c8c4e588df11a4086b74f6338b8f2.
Merge pull request #1462 from alexrudy/unit-format

Unit format specifiers