code: private <T> void invoke(String methodName, Object argument, Class<T> returnType, Map<String, String> extraHeaders, JsonRpcCallback<T> callback) {
  		doInvoke(methodName, argument, returnType, extraHeaders, callback);
  	}
docs: Invokes the given method with the given arguments and invokes the
  {@code JsonRpcCallback} with the result cast to the given
  {@code returnType}, or null if void. The {@code extraHeaders} are added
  to the request.
  
  @param methodName   the name of the method to invoke
  @param argument     the arguments to the method
  @param returnType   the return type
  @param extraHeaders extra headers to add to the request
  @param callback     the {@code JsonRpcCallback}