Dynamically calculate bounds

When bounds is defined only when the path is generated the svg element always keeps the same size. The problem becomes obvious when the initial zoom level is set to 1. On zoom and pan the polygons get clipped by the borders of the svg.