Beginning of framework code and impl for new OpenOrCreateEntry function

Beginning implementation of disk_cache::OpenOrCreateEntry
which will be a new function aiming to simplify
multiple requests attempting to open and then create
a cache entry.
This CL contains the API implementation for disk_cache,
an implementation for mem_backend, and units test for
mem_backend

Change-Id: I96ffc03d21fdf3f66d616be33a8e00d9daa907b3
Reviewed-on: https://chromium-review.googlesource.com/c/1384642
Reviewed-by: Shivani Sharma <shivanisha@chromium.org>
Reviewed-by: Maks Orlovich <morlovich@chromium.org>
Commit-Queue: Steven Bingler <bingler@chromium.org>
Cr-Commit-Position: refs/heads/master@{#620836}
7 files changed