Simplify Mojo interface pararmeter usage

Interface request parameters can be specified as an instance of the interface's proxy class. Ordinary interface parameters can be specified as an instance of the interface's stub class. The stub class constructor has an optional delegate parameter that defines the stub's implementation.

Example of an interface request parameter:

  var urlLoader = new loader.URLLoader.proxyClass;
  networkService.createURLLoader(urlLoader); // interface& parameter

  var urlRequest = new loader.URLRequest({
    url: "http://www.cnn.com",
    method: "GET",
    auto_follow_redirects: true
  });

  urlLoader.start(urlRequest).then(function(result) {
      // ..Do something with result.response
  });

Example of an interface parameter:

  var eventHandler = {
    onEvent: function(event) {
      console.log("event.type=" + event.action);
      return Promise.resolve(); // This just gates the next event delivery
    }
  };
  var eventDispatcher =
      new nativeViewport.NativeViewportEventDispatcher.stubClass(eventHandler);
  viewport.setEventDispatcher(eventDispatcher); // interface parameter
  viewport.show();

BUG=433485
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/742973002