code: public <E> E createInstance(Object... objects) {
      ClassFactory<E> fact = createFactory(objects);
      return fact.createInstance(objects);
    }
docs: Create an instance of the class, inferring the type automatically, and
  given an array of objects as constructor parameters NOTE: the resulting
  instance will [unlike java] invoke the most narrow constructor rather
  than the one which matches the signature passed to this function
  
  @param <E>
  The type of the object returned
  @param objects
  The arguments to the constructor of the class
  @return An instance of the class