Lib/GeocodeLib updates

* comment incorrect, pause time in microseconds
* option for number of `repeats` vs. hardcoding at 5
* new property for `reachedQueryLimit` which disables all future `geocode`/`reverseGeocode` calls in this run
* `reset` will clear `reachedQueryLimit`
`s/repeats/repeat/g` & defaulting to google recs

defaults changed to 2 repeat @ 2 seconds:

https://developers.google.com/maps/documentation/business/articles/usage_limits

> Upon receiving a response with status code OVER_QUERY_LIMIT, your application should determine which usage limit has been exceeded. This can be done by pausing for 2 seconds and resending the same request. If status code is still OVER_QUERY_LIMIT, your application is sending too many requests per day. Otherwise, your application is sending too many requests per second.

according to their guidelines, you should really only try twice
GeocodeLib: removed `$raise` from pause

having increased the delay to 2sec, this didn't really do much for us anymore.
GeocodeLib.php _transform() handles null results

I have run into this too, if the data doesn't come back from the geocode API for whatever reason, the `_transform()` doesn't work.

https://travis-ci.org/dereuromark/cakephp-tools/jobs/38745456
"array_key_exists() expects parameter 2 to be array, null given"

added a couple of minor checks to ensure that an array is what we're dealing with, for results, at all times
Merge pull request #98 from zeroasterisk/master-upstream

Lib/GeocodeLib updates