Create a canvas there is no canvas for the figure.

If the figure is created from matplotlib.figure.Figure rather than pyplot.figure.
Add a test case for the empty canvas patch
import FigureCanvasAgg at the top.

the AGG backend of mpl should always be available thus
it doesn't hurt to import it at the top of the module.

We use the agg canvas as a 'fall-back' canvas to prepare the figure
for the crawler -- in case the figure has no assigned canvas yet.

(It may actually make sense to *always* use the agg backend,
b/c the rendered image is discarded anyway and the agg backend is much
faster than those with an X11 connection)
Merge pull request #30 from rainwoodman/patch-1

Create a canvas there is no canvas for the figure.