This class wraps a WeakHashMap that holds one ConcurrentHashMap per ClassLoader. In the rare
event of a previously unmapped ClassLoader, the WeakHashMap is replaced by a new one. This avoids
any synchronization overhead, much like a CopyOnWriteArrayList