anchor.diff:    }
   
     void acceptConnection(String requestorUrl, ServiceProvider serviceProvider) {}
  -
  -  core.MojoMessagePipeEndpoint _connectToServiceHelper(
  -      String url, String service) {
  -    var applicationPipe = new core.MojoMessagePipe();
  -    var proxyEndpoint = applicationPipe.endpoints[0];
  -    var applicationEndpoint = applicationPipe.endpoints[1];
  -    var serviceProviderProxy =
  -        new service_provider.ServiceProviderProxy.unbound();
  -    _applicationImpl.shell.connectToApplication(
  -        url, serviceProviderProxy, null);
  -    serviceProviderProxy.connectToService(service, applicationEndpoint);
  -    _proxies.add(serviceProviderProxy);
  -    return proxyEndpoint;
  -  }
   }
  
positive.code:   void close({bool nodefer: false}) => shell.close();
  }
  
  // TODO(zra): Better documentation and examples.
  // To implement, do the following:
  // - Optionally override acceptConnection() if services are to be provided.
  
negative.code: 
    void close() {
      assert(_applicationImpl != null);
      _applicationConnections.forEach((c) => c.serviceProvider.close());
      _applicationConnections.clear();
      _serviceProviders.forEach((sp) => sp.close());
      _serviceProviders.clear();
      _applicationImpl.close();
  