code: func (c *Conn) doRPC(path string, values []KV) (code int, vals []KV, err error) {
  	url := &url.URL{
  		Scheme: c.scheme,
  		Host:   c.host,
  		Path:   path,
  	}
  	body, enc := TSVEncode(values)
  	headers := identityheaders
  	if enc == Base64Enc {
  		headers = base64headers
  	}
  	resp, t, err := c.roundTrip("POST", url, headers, body)
  	if err != nil {
  		return 0, nil, err
  	}
  	resultBody, err := ioutil.ReadAll(resp.Body)
  	resp.Body.Close()
  	if !t.Stop() {
  		return 0, nil, ErrTimeout
  	}
  	if err != nil {
  		return 0, nil, err
  	}
  	m, err := DecodeValues(resultBody, resp.Header.Get("Content-Type"))
  	if err != nil {
  		return 0, nil, err
  	}
  	return resp.StatusCode, m, nil
  }
docs: // Do an RPC call against the KT endpoint.