added memcache support to avoid downloading all data again each hit