Properly passing on horiz-/vertOn to Cursor()

Simple fix to properly pass on the horizOn and vertOn keyword
arguments to the matplotlib.widgets.Cursor constructor.
Improve empty collection check in add_collection.
Add test for add_collection
Typo in docstring.
Only set 'consider' if no value was supplied.
Fix bug in _auto_legend_data which caused the vertex list to always be empty.
Fix bug in helper function which prevented the legend from avoiding vertices.

This bug was not triggered before because count_contains() was never
called due to the empty vertex list in Legend._find_best_position().
Add TODO note about marker extents and vertex overlaps.
Typo in docs.
Fix test failure (caused by corner case in np.concatenate).
Add new test for automatic legend placement to check that vertices are indeed taken into account.
Add FIXME comment.
Also use 'loc=0' in 'test_various_labels' to further test the new code.
Added a strategy to stop losing ticks on the ends of an axis.  The approach that is
used is to pad the interval that is being used to "clip" ticks from the axis because
they are off the end.

The padding is chosen specifically such that the tick cannot be drawn a pixel past the
end of the axis.  So long as the tick is within this bound, it should be OK to draw it.
Modifications to MultipleLocator and LogLocator, so that the locators will
give locations one past what they really need to.  This is necessary, because
in situations where round off error matters, we want the locator to offer
more that it really thinks it needs to.  The clipping of ticks still takes
place in the Axis class, so it's perfectly fine to add more locs than necessary.

In fact, matplotlib relies on the clipping behavior in the Axis class already
to not draw ticks outside of the limits of the axis.
oops, missed a return statement in my copy/pasting.
Update lib/matplotlib/backends/backend_cairo.py
Enable to switch off the removal of comments in csv2rec.
Fix itervalues -> values.  As reported by Massimiliano Costacurta in mailing list thread "BUG: RuntimeError: dictionary changed size during iteration"
PEP8