docs: public T newInstance(Object... args)
      {
          try
          {
              return type.cast(factoryMethod.invoke(null, args));
          }
          catch (IllegalAccessException e)
          {
              throw ExceptionImposter.imposterize( e );
          }
          catch (InvocationTargetException e)
          {
              throw ExceptionImposter.imposterize( e.getCause() );
          }
      }