added memcache layer