Arbitrary transverse projections.

Fixes #1157. I’m not sure I implemented this correctly, however. I tested it using http://bl.ocks.org/mbostock/5126418/ and http://bl.ocks.org/mbostock/4695821/ and it seems to work well, but the tests are broken. I’m not certain I’m accounting for the projection’s translate and center correctly when undoing the rotation after projection.

Also, this is strictly incompatible in terms of d3.geo.transverseMercator.raw, since the transverse mercator is now a special-case of the Mercator projection. But I suspect that’s probably okay.

Alternatively, we could keep the special raw transverse Mercator implementation, but then we’d need to implement equatorial cutting (?) rather than antimeridian cutting.

It would also be good to test the performance of this approach vs. the previous one.