Refactored to use WP_Session via WP_Geo_Cache