  POST or PUT example:
  ============================
  
  response = surl_start_request("POST", buf, headers, 1);
  if (response == NULL) {
    printf("No response.\n");
    exit(1);
  }
  if (response->code != 100) {
    printf("Unexpected response code %d\n", response->code);
    exit(1);
  }

  surl_send_data_size(response, strlen("abcdefghijklmnopqrstuvwxyz"));
  surl_send_data(response, "abcdefghijklmnopqrstuvwxyz", strlen("abcdefghijklmnopqrstuvwxyz"));

  surl_read_response_header(response);
  buffer = malloc(BUFSIZE);
  while ((r = surl_receive_data(response, buffer, BUFSIZE - 1)) > 0) {
    printf("%s", buffer);
  }
  
  printf("done\n");
  
  surl_response_free(response);

=============================
GET example

  response = surl_start_request("GET", buf, headers, 1);
  if (response == NULL) {
    printf("No response.\n");
    exit(1);
  }
  printf("Got response %d (%zu bytes), %s\n", response->code, response->size, response->content_type);

  buffer = malloc(BUFSIZE);
  while ((r = surl_receive_data(response, buffer, BUFSIZE - 1)) > 0) {
    printf("%s", buffer);
  }
  
  printf("done\n");
  
  surl_response_free(response);
