Simple Map Wrapper

Two maps generated with almost-identical code, showing a simple wrapper for Google Maps or OpenStreetMap-based Leaflet.

Code for each looks approximately like this; view source for details:

new Map(document.getElementById('map'),
        function(map) {
          map.addMarker(37.770444, -122.434960, map.icons.voter, 'Hello World!', 'http://example.com');
          map.addMarker(37.769079, -122.433674, map.icons.poll,  'Hello World!');
          map.addMarker(37.771612, -122.426836, map.icons.driver);
        },
        {lat: 37.77073, lon: -122.43020, zoom: 16});

Defaults are mostly left uncustomized, except for default scrollwheel zoom, which should not be used in a non-fullscreen map.