Apply epsilon for negative area.

Degenerate polygons such as ABCBA can have area that is approximately zero (but
not exactly zero) due to floating point rounding error. If this approximately
zero value is less than zero, such as -5e-20, prior to this change D3 would
interpret this degenerate polygon as covering the entire sphere. This commit
enforces that the negative area must be less than some epsilon (-1e-6) before
assuming an counterclockwise winding order.

Note that this precludes the existence of very large polygons that almost cover
the entire sphere, but it seems safer to preclude those rare polygons than to
wildly misinterpret common degenerate polygons.
Merge remote-tracking branch 'upstream/fix-degenerate-winding' into user-select

Conflicts:
	d3.min.js