Select between Java 7's ClassValue and a fallback implementation (which uses a simple WeakHashMap) for Java 6