Use d3.geo.area
Ensure asGeoJSON returns winding orders expected by D3
Cache GeoJSON transient
Insert areas in sorted order

Fixes #1693