Fixes a stack trace obtained when adding an annotation with a REALLY bad
coordinate.  This is because MPL assumes that the value will be an int,
when it might be a long.

Equivalent patch to d14a793
Switched out the buttons assignments for panning and label dragging on polar plots, because this
is more intuitive.
Added OnMouseUpDuringZoom
When 3D z data has only zero data inside, matplotlib dumps a stack trace.
In that case, no levels are computed: self.levels = [].  So, we make
_autolev return something.
Font manager modifications to support partial cache rebuilds and delayed
cache rebuilds.

Specific to my needs.