plug in and generalise map.js

- store the variable bits of the map in a "datasets" variable
- now init() is a bit more general
- SVG size is now full browser window
- reindentation (oops)