Use topojson for tiles

Topojson is a more compressed serialization format than geojson (as it combines borders).

* Remove some unused properties from the geojson objects
* Include a python topojson library (with some bug fixes)
* Add a new topojson endpoint
* Modify the JS to expand the topojson into geojson (the rest of the app runs normally)
* Test that topojson is working
* Make the precaching command use the topojson endpoint