code: public void setTypeMap(Map<Class<? extends T>, C> map) {
  		this.classified = new ConcurrentHashMap<Class<? extends T>, C>(map);
  	}
docs: Set the classifications up as a map. The keys are types and these will be mapped
  along with all their subclasses to the corresponding value. The most specific types
  will match first.
  @param map a map from type to class