code: func handler(w http.ResponseWriter, r *http.Request) {
  	t := &oauth2.Transport{Config: config}
  	t.Exchange(r.FormValue("code"))
  	// The Transport now has a valid Token. Create an *http.Client
  	// with which we can make authenticated API requests.
  	c := t.Client()
  
  	// Now you can pass the authenticated Client to gopencils, and
  	// it will be used to make all the requests
  	api := gopencils.Api("http://your-api-url.com/api/", c)
  
  	// Create a pointer to our response struct, which will hold the response
  	re := &respStruct{}
  	// Maybe some payload to send along with the request?
  	payload := map[string]interface{}{"Key1": "Value1"}
  
  	// Perform a GET request
  	// URL Requested: http://your-api-url.com/api/users
  	api.Res("users", re).Get()
  
  	// Perform a GET request with Querystring
  	querystring := map[string]string{"page": "100"}
  	// URL Requested: http://your-api-url.com/api/users/123/items?page=100
  	api.Res("users").Id(123).Res("items", re).Get(querystring)
  
  	// Or perform a POST Request
  	// URL Requested: http://your-api-url.com/api/items/123 with payload as json Data
  	api.Res("items", re).Id(123).Post(payload)
  }
docs: // The user will be redirected back to this handler, that takes the
  // "code" query parameter and Exchanges it for an access token.