Make the membuffer cache initialization code atomic and being executed
at most once.

Previously, multiple theads could be trying to create the cache
simultaneously.  The code dealt with that after the fact safely,
hence this is not a correctness issue.  However, it causes a spike
in memory consumption likely followed by an OOM error or the server
process being killed by the OS.

* subversion/libsvn_subr/cache_config.c
  (initialize_cache): actual cache creation code factored out and
                      simplified from ...
  (svn_cache__get_global_membuffer_cache): ... this; use atomic init.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1527103 13f79535-47bb-0310-9956-ffa450edef68