pop3: Fixed APOP being determined by CAPA response rather than by timestamp

This commit replaces that of 9f260b5d6610f3 because according to RFC-2449,
section 6, there is no APOP capability "...even though APOP is an
optional command in [POP3].  Clients discover server support of APOP by
the presence in the greeting banner of an initial challenge enclosed in
angle brackets."
RELEASE-NOTES: Corrected copy/paste typo
Curl_pp_readresp: use memmove not memcpy, possibly overlapping areas

Fixes commit 1deac31eba7
TheArtOfHttpScripting: major update, converted layout and more
pop3: Fixed auth preference not being honored when CAPA not supported

If a user indicated they preferred to authenticate using APOP or a SASL
mechanism, but neither were supported by the server, curl would always
fall back to clear text when CAPA wasn't supported, even though the
user didn't want to use this.

This also fixes the auto build failure caused by commit 6f2d5f0562f64a.
imap: Fixed auth preference not being honored when CAPABILITY not supported

If a user indicated they preferred to authenticate using a SASL
mechanism, but SASL authentication wasn't supported by the server, curl
would always fall back to clear text when CAPABILITY wasn't supported,
even though the user didn't want to use this.
threaded resolver: Use pthread_t * for curl_thread_t

... since pthread_t may be non-scalar and/or may represent a real thread
with scalar 0.

Bug: http://curl.haxx.se/bug/view.cgi?id=1314
Curl_thread_create: use Curl_safefree to allow NULL better

free() itself allows a NULL input but our memory debug system requires
Curl_safefree() to be used instead when a "legitimate" NULL may be freed. Like
in the code here.

Pointed-out-by: Steve Holme
RELEASE-NOTES: Synced with 0ff0a994ada62a
curl_dofree: allow free(NULL)

Previously this memdebug free() replacement didn't properly work with a
NULL argument which has made us write code that avoids calling
free(NULL) - which causes some extra nuisance and unnecessary code.
Starting now, we should allow free(NULL) even when built with the
memdebug system enabled.

free(NULL) is permitted by POSIX