This class encapsulates the caching strategy for XmlBeans.
By subclassing this, a client of XmlBeans can implement caches that are
more suitable for different applications using information that XmlBeans
This class works as a singleton and as a default implementation for the cache.
You can set a particular implementation using the "xmlbean.systemcacheimpl"
system property or using the static
Subclasses of this need to be thread-safe. An implementation can be replaced
at any time, so use of static variables is discouraged to ensure proper cleanup.