code: func start(proxy *Proxy) error {
  	if proxy.Enabled {
  		return ErrProxyAlreadyStarted
  	}
  
  	proxy.tomb = tomb.Tomb{} // Reset tomb, from previous starts/stops
  	go proxy.server()
  	err := <-proxy.started
  	// Only enable the proxy if it successfully started
  	proxy.Enabled = err == nil
  	return err
  }
docs: // Starts a proxy, assumes the lock has already been taken