Updating main branch

Creating a pull request for commenting ability
I'm still not sure this class (and {Polygon,Polyline}Options) are necessary.  Can we not just have static methods that construct the Options object directly?  Or are there going to be other uses of this class.

The one argument I can see is that ImportGeoJson is already too big and it would be nice to break it up into smaller classes but I think there might be other ways to achieve that.