docs: public static Object instantiateObject(String className,
                                             ClassLoader classLoader, Object...args) {
          Constructor c = (Constructor) constructors.get( className );
          if ( c == null ) {
              c = loadClass(className, classLoader).getConstructors()[0];
              constructors.put(className, c);
          }
  
          Object object;
          try {
              object = c.newInstance(args);
          } catch ( Throwable e ) {
              throw new RuntimeException( "Unable to instantiate object for class '" + className +
                      "' with constructor " + c, e );
          }
          return object;
      }