add map.resize() to make map responsive

see #12 

This PR adds the function map.resize() which can be attached to an eventlistener, eg:

```
window.addEventListener('resize', function(event){
    map.resize();
});
```

I didn't add a resize eventlistener directly into datamap cause this way people can decide when they want to call map.resize() as some use smartresize or the like.

I also didn't add the CSS to make the svg responsive directly in datamap, you can see an example CSS in src/responsive.html

@markmarkoh I am not sure if I coded everything according to your preferences, so if you have any questions, improvements... let me know.
How much of this CSS is necessary for responsive to work properly? If just a `width`, `height` and `relative` position is set, does it still work? 

If we need things like `max-width`, `height: auto`, etc., we should move those into the CSS that is injected on the page with datamaps.