code: public static<T extends Com4jObject>
      T createInstance( Class<T> primaryInterface, GUID clsid ) throws ComException {
          return createInstance(primaryInterface,clsid.toString());
      }
docs: Creates a new COM object of the given CLSID and returns
  it in a wrapped interface.
  
  @param primaryInterface The created COM object is returned as this interface.
  Must be non-null. Passing in {@link Com4jObject} allows
  the caller to create a new instance without knowing
  its primary interface.
  @param clsid The CLSID of the COM object to be created. Must be non-null.
  
  @param <T> the type of the return value and the type parameter of the class object of primaryInterface
  
  @return non-null valid object.
  
  @throws ComException if the instantiation fails.