TileJSON is not what I thought it was.

It's just a way to collect the metadata for raster layers in one versionable file.
See https://www.mapbox.com/developers/tilejson/ for its original and canonical spec
bug report
d3 vector-tiling reference example
pirating OSM
forgotto
it downloads; but it doesn't download what I want
factor out tile downloading
since OSM's servers fake tiles they don't have, just hardcode an extent to rip.

(actually, OSM autogens tiles on request, with a cache in Varnish)
retrofit, uglily, WAMP into server.py; frontend changes coming next
Match the frontend to the last backend commit

Also, fix a bug that slipped in during the refactor:
I was returning a generator on each next() instead of
the values that next() should've been producing.
Update to AutobahnJS 0.9.1
Gruntle: the AutobahnJS API changed AGAIN out from under me.

Also, make a VERY IMPORTANT NOTE about how Autobahn makes it seem
you can subscribe multiple times, but you actually can't.
clarify wamp vs not-wamp in the logging
Make RPC "start" and "stop" actually work.

Making the model know whether it was running or not didn't make sense
but maybe we should revisit that concept later.
I am concerned.
factor out map.js
factour out wamp.js
wrap map.js in $() so it only runs after page load
Guiding light comments.

The Autobahn API is in flux and I don't have time to fix this example properly.
In fact, I don't know if I *should* fix it; I did intentionally include a copy
of autobahn.js to isolate this example from the flux.
But of course now that flux has made this example apocryphal as written currently...
complaining, mostly