On the fsfs-format7 branch:  introduce the notion of priority classes
to cached data.  With that, block-read may prefetch lots of data even
into small caches without evicting the parts that are most effective
to keep in cache.

More tuning on the insertion / eviction heuristics can be expected in
the near future.

* subversion/include/private/svn_cache.h
  (SVN_CACHE__MEMBUFFER_HIGH_PRIORITY,
   SVN_CACHE__MEMBUFFER_DEFAULT_PRIORITY,
   SVN_CACHE__MEMBUFFER_LOW_PRIORITY): define standard priority classes
  (svn_cache__create_membuffer_cache): add priority parameter to cache

* subversion/libsvn_subr/cache-membuffer.c
  (entry_t): tag all entries with a priority
  (find_entry): make high-prio entries less likely to be evicted
  (ensure_data_insertable): adapt eviction code
  (membuffer_cache_set_internal,
   membuffer_cache_set,
   svn_membuffer_cache_set,
   svn_membuffer_cache_set_partial,
   svn_cache__create_membuffer_cache): pass priority info through
  (svn_membuffer_cache_t): add priority class info

* subversion/libsvn_fs_fs/caching.c
  (create_cache): add priority parameter
  (svn_fs_fs__initialize_caches,
   svn_fs_fs__initialize_txn_caches): assign priority classes to caches

* subversion/tests/libsvn_subr/cache-test.c
  (test_membuffer_cache_basic): update caller

* tools/server-side/fsfs-stats.c
  (read_revisions): ditto

git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/fsfs-format7@1443803 13f79535-47bb-0310-9956-ffa450edef68