code: func (a *Agent) Join(addr string, wan bool) error {
  	r := a.c.newRequest("PUT", "/v1/agent/join/"+addr)
  	if wan {
  		r.params.Set("wan", "1")
  	}
  	_, resp, err := requireOK(a.c.doRequest(r))
  	if err != nil {
  		return err
  	}
  	resp.Body.Close()
  	return nil
  }
docs: // Join is used to instruct the agent to attempt a join to
  // another cluster member