Add couch_file cache

Initial cherry-pick on top of main branch
12 files changed