appengine/app: implement in-app memory cache layer