Expose caching options

Makes it possible to do

    JGeoIP.new(path, caching: JGeoIP::GEOIP_INDEX_CACHE)

for when you need to run JGeoIP with the city and organization databases in memory constrained environments.

Also creates a setup task to download the Geo Lite database for the tests.