CURLOPT_NOBODY.3: clarify this option is for downloads

When enabling CURLOPT_NOBODY, libcurl effectively switches off upload
mode and will do a download (without a body). This is now better
explained in this man page.

Bug: http://curl.haxx.se/mail/lib-2014-08/0236.html
Reported-by: John Coffey
FAQ: 4.20 curl doesn't return error for HTTP non-200 responses
FAQ: mention -w in the 4.20 answer as well
curl.1: add an example for -H
curl_formadd.3: setting CURLFORM_CONTENTSLENGTH 0 zero means strlen
libcurl.3: Typo fixed
getinfo-times: Typo fixed
Fix CA certificate bundle handling in darwinssl.

If the --cacert option is used with a CA certificate bundle that
contains multiple CA certificates, iterate through it, adding each
certificate as a trusted root CA.
resolve: cache lookup for async resolvers

While waiting for a host resolve, check if the host cache may have
gotten the name already (by someone else), for when the same name is
resolved by several simultanoues requests.

The resolver thread occasionally gets stuck in getaddrinfo() when the
DNS or anything else is crappy or slow, so when a host is found in the
DNS cache, leave the thread alone and let itself cleanup the mess.
low-speed-limit: avoid timeout flood

Introducing Curl_expire_latest(). To be used when we the code flow only
wants to get called at a later time that is "no later than X" so that
something can be checked (and another timeout be added).

The low-speed logic for example could easily be made to set very many
expire timeouts if it would be called faster or sooner than what it had
set its own timer and this goes for a few other timers too that aren't
explictiy checked for timer expiration in the code.

If there's no condition the code that says if(time-passed >= TIME), then
Curl_expire_latest() is preferred to Curl_expire().

If there exists such a condition, it is on the other hand important that
Curl_expire() is used and not the other.

Bug: http://curl.haxx.se/mail/lib-2014-06/0235.html
Reported-by: Florian Weimer
Check CA certificate in curl_darwinssl.c.

SecCertificateCreateWithData() returns a non-NULL SecCertificateRef even
if the buffer holds an invalid or corrupt certificate. Call
SecCertificateCopyPublicKey() to make sure cacert is a valid
certificate.
Merge pull request #115 from ldx/darwinsslfixpr

darwinssl: now accepts cacert bundles in PEM format in addition to single certs
polarssl: implement CURLOPT_SSLVERSION

Forwards the setting as minimum ssl version (if set) to polarssl.  If
the server does not support the requested version the SSL Handshake will
fail.

Bug: http://curl.haxx.se/bug/view.cgi?id=1419
RELEASE-NOTES: synced with e608324f9f9
multi: convert CURLM_STATE_CONNECT_PEND handling to a list

... instead of scanning through all handles, stash only the actual
handles that are in that state in the new ->pending list and scan that
list only. It should be mostly empty or very short. And only used for
pipelining.

This avoids a rather hefty slow-down especially notable if you add many
handles to the same multi handle. Regression introduced in commit
0f147887 (version 7.30.0).

Bug: http://curl.haxx.se/mail/lib-2014-07/0206.html
Reported-by: David Meyer
curl_multi_cleanup: remove superfluous NULL assigns

... as the struct is free()d in the end anyway. It was first pointed out
to me that one of the ->msglist assignments were supposed to have been
->pending but was a copy and paste mistake when I realized none of the
clearing of pointers had to be there.
THANKS: added Dennis Clarke

Dennis Clarke from Blastwave.org for ensuring that nightly builds run
smooth on Solaris!
CURLOPT_CA*: better refering between *CAINFO and *CAPATH

... and a minor wording edit
MAIL-ETIQUETTE: "1.8 I posted, now what?"
RELEASE-NOTES: Clarify email Kerberos support is currently via Windows SSPI