code: func (c *Client) newRequest(method Method, endpoint string) *Request {
  	req := &Request{
  		Method:  method,
  		URL:     resourceURL(c.BaseURL(), endpoint),
  		Headers: http.Header(make(map[string][]string)),
  	}
  
  	// Copy over the headers. Don't set them directly to ensure changing
  	// them on the request doesn't change them on the client.
  	for k, vv := range c.Headers {
  		for _, v := range vv {
  			req.Headers.Add(k, v)
  		}
  	}
  
  	return req
  }
docs: // newRequest returns a *Request ready to be used by one of Client's exported
  // methods like NewFormRequest.