Use autolim kwarg in add_collection to prevent duplication of effort.

This changeset cleans up several problems associated with updating
Axes.dataLim. The basic point is that when a method that creates
a collection also updates Axes.dataLim, Axes.add_collection() should be
called with autolim=False.  With autolim=True, add_collection will
use a very general method to update the dataLim, but in many cases
the method creating the collection can perform the update much more
efficiently.

Closes #3095, which reported a regression that appears to have been
introduced by 88b722f.