code: private static ConstructorKey key(Class<?> intf, Constructor<?> constructor) {
          return key(intf, constructor.getParameterTypes());
      }
docs: Creates a constructor key for use in accessing constructors. The key
  combines the interface and types in a single instance which we can then
  use in a map.
  
  @param intf        the interface to build the key for
  @param constructor the constructor value which this key will be linked
  to
  @return a constructor key which can be used to lookup a constructor