Cleanup

splits the code into multiple files and brings in the unzipping code, which is based on [this library](https://github.com/Stuk/jszip) by @Stuk and adds a shp.unzip which given an zipfile will return an object of file names and array buffers and parseZip which given an arrayBuffer of a zipped shapefile will return geojson.  The main shp() function now uses this if the url you give it ends in .zip