Fix the JavaHL class cache implementation to make the code re-entrant.

[in subversion/bindings/javahl/native]
* jniwrapper/jni_object.hpp (ClassCache::get_*):
   Change the factory methods to require a JNI environment parameter.
* jniwrapper/jni_class_cache.cpp
  (ClassCacheImpl::m_env): Remove cached JNI environment.
  (ClassCacheImpl::static_init): Require a JNI environment parameter.
  (ClassCacheImpl::get_*): Likewise.
  (ClassCache::get_*): Update; forward JNI environment to ClassCacheImpl.

* jniwrapper/jni_string_map.hpp
  (BaseMap::Set::impl, BaseMap::Iterator::impl, BaseMap::Entry::impl):
   Require a JNI environment parameter and forward it to the
   ClassCache factory methods.

* AuthnCallback.hpp, AuthnCallback.cpp,
  Credential.hpp, Credential.cpp, EditorCallbacks.hpp,
  ExternalItem.cpp, Prompter.cpp, SubversionException.hpp
  jniwrapper/jni_base.cpp, jniwrapper/jni_channel.hpp,
  jniwrapper/jni_channel.cpp, jniwrapper/jni_io_stream.hpp,
  jniwrapper/jni_list.hpp, jniwrapper/jni_list.cpp,
  jniwrapper/jni_string_map.hpp, jniwrapper/jni_string_map.cpp:
   Update all uses of ClassCache and the static impl factories
   to forward the JNI environment that's already available from
   the Java native method implementations.


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