Add skew() and skew_deg() to Affine2D.

These set up skew transforms, which can be viewed as indpendantly
rotating the X and Y axes.
Fix Bbox transformation for skewed Axes.

This involves transforming the upper left and lower right points
separately to come up with the combined translated upper right.
Replace hand-creation of blended transforms in Axes.

By default get_[x|y]axis_transform() do the same, but by calling these
methods instead of creating the transforms by hand, we better support
custom Axes.
Remove unecessary use of blended transforms in spines.

The manual use of the blended transform breaks non-seperable custom
axes/projections. Removing this does not appear to affect any of the
spine examples.
Re-order drawing of spines and axis objects.

This gives the spine a chance to update the axis object before draw.
This is sensible given that the axis can be registered with the spine
so that it can modify it, and is necessary for some use cases.