Update references to dependencies, add ability to create regional shape files and add grunt for code coverage and continuous testing

1. Update reference to 'timezone' library to match most recent major version, to fix the hanging initialization problem
2. Update reference to 'geolib' to match most recent major version
3. Add ability to create regional GEO JSON shape file from included world GEO JSON shape file, this allows us to take better advantage of initializing the library with an optimized GEO JSON shape file.
4. Cache shortcuts: optimize initialization by caching shortcuts (in 'lib/current_world.json') after they are created from the GEO JSON shape file, when loading the same shape file we skip over the construction of the shortcuts and load the cached shortcuts.  One caveat is if the GEO JSON shape file is updated this caching mechanism will not see that, therefore the GEO JSON shape file will need to be deleted when the GEO JSON shape file has been updated.
5. Added grunt, grunt-test and grunt-watch dev dependencies to automate testing while coding.
6. Added blanket dev dependency to provide coverage reports while coding.