Fix resampling interpolation along antemeridian.
Fix resampling interpolation close to poles.
Fix longitudes outside [-180°, 180°].
Add tests for longitude wrapping.
Add another resampling test for points near poles.

This tests the fix in 091f3894994cd6eaccf4fdfadc58381c5f7d392c.
Reuse sin/cos values during resampling recursion.
Extract static code.
Create fewer temporaries for centroid.
Collection centroids are undefined.

It's not always meaningful to define the centroid of a collection because
collections are heterogenous: they can contain points, lines, polygons, or all
these types together. The previous code ignored objects that had dimensionality
lower than the collection's maximum dimensionality; for example, ignoring lines
and points if the collection contains polygons. While this may be what you want,
this feels magical and it's simpler to just define the centroid as undefined.
I'd prefer to force the user to state what they want explicitly, say by creating
a MultiPolygon that merges together a collection's polygons.
Fix typo.
Needlessly optimize intersection code.
Formatting.
Consolidate duplicate code.
Remove defunct d3.geo.circle clip.

This has been replaced by d3.geo.projection clipAngle.
Fix accidental global context.
Delete d3.geo.circle clip test.
Merge branch 'geo' of https://github.com/jasondavies/d3 into 3.0
Simplify.
Fix polygon clipping.
Improve Polygon clipping.

1. We no longer perform an equality check on GeoJSON polygon endpoints,
since we know that the first and last points should be equal.
2. However, there are special cases where a polygon just touches the
clip edge, generating two coincident intersection points.  Here we avoid
generating a coincident point, and continue as normal.
3. Another special case is where we have coincident intersection points
e.g. due to a self-intersecting polygon.  Here we continue calculating
the winding number as if this is a closed polygon (so we know whether to
insert a polygon around the whole clip edge).