Provisional support for PEP484 Type Hint Annotations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New public API should be type hinted in ``.pyi`` stub files (except ``pyplot`` and tests
which are typed in-line).
Tests should be type hinted minimally, essentially only when ``mypy`` generates errors.

CI and configuration for running ``mypy`` have been added.


Generation of ``pyplot.py`` requires ``black``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The autogenerated portions of ``pyplot.py`` use ``black`` autoformatting to ensure
syntax-correct, readable output code.

As such ``black`` is now a development and test requirement (for the test which
regenerates ``pyplot``).
