Initial rework of gen_gallery.py

* Creates a toc at the top of the gallery page
* entries are created by a list of sub-directories
* examples from each sub-dir is sectioned
Add a link to matplotlib questions on stackoverflow.
for interpolation='none', the affine matrix is calculated in the display coordinate
Checkable pan/zoom buttons for QT NavigationToolbar
Add a *simple* arrow example
Remove interaction directly with the figure
FIX Deleted redundant methods and code that could not work
PEP8 compliance on lib/matplotlib/bezier.py
FIX spelling mistakes
PEP8 on lib/matplotlib.afm.py
PEP8 lib/matplotlib/patches.py
PEP8
Add test for #1150.
refactored grid_spec.tight_layout and fixed #1055
Add a "show" method to figures that don't have a GUI backend.  Fixed #835.
Remove figure.show monkeypatch from GUI backends.

This also adds the warn kwarg to figure.show for non-gui
backends.
Closes issue #1120.  There were two problems: barbs were being printed slightly differently on Python 3 due to the difference of old vs. division.  Colors were being converted to hex slightly wrong on Python 2 -- the use of np.round rather than Python's builtin round provides consistent behavior.
Add stacked kwarg to hist. This allows stacked step and stepfilled hists.
Clean up a few style issues
Iterate through datasets in the reverse order instead of reversing the dataset list