tool_operate: Moved argument parsing into operate()
tool_operate: Moved list SSL engines code into operate()
tool_operate: Removed unused argument parameters from operate_do()
http2: spell fixed README and added version requirement
tests: add test for bug #1303 (dns cache timeout)

Test-case 1515 reproduces bug #1303, where libcurl
would incorrectly prune DNS entries added via
CURLOPT_RESOLVE after the DNS_CACHE_TIMEOUT had
expired.
tests: add test for bug #1327 (dns cache timeout)

Fix for bug #1303 (030a2b8cb) was not complete.
libcurl still pruned DNS entries added manually
after detecting a dead connection. This test
checks such behavior.
nss: prefer highest available TLS version

Offer TLSv1.0 to 1.2 by default, still fall back to SSLv3
if --tlsv1[.N] was not specified on the command line.
100-continue: fix timeout condition

When using the multi socket interface, libcurl calls the
curl_multi_timer_callback asking to be woken up after
CURL_TIMEOUT_EXPECT_100 milliseconds.

After the timeout has expired, calling curl_multi_socket_action with
CURL_SOCKET_TIMEOUT as sockfd leads libcurl to check expired
timeouts. When handling the 100-continue one, the following check in
Curl_readwrite() fails if exactly CURL_TIMEOUT_EXPECT_100 milliseconds
passed since the timeout has been set!

It seems logical to consider that having waited for exactly
CURL_TIMEOUT_EXPECT_100 ms is enough.

Bug: http://curl.haxx.se/bug/view.cgi?id=1334
nss: Updated copyright year for recent edits
ssh: Fixed a NULL pointer dereference on OOM condition
tests: Document use of the MEMDEBUG_LOG_SYNC macro
formpost: use semicolon in multipart/mixed

Not comma, which is an inconsistency and a mistake probably inherited
from the examples section of RFC1867.

This bug has been present since the day curl started to support
multipart formposts, back in the 90s.

Reported-by: Rob Davies
Bug: http://curl.haxx.se/bug/view.cgi?id=1333
nss: ALPN and NPN support

Add ALPN and NPN support for NSS. This allows cURL to negotiate
HTTP/2.0 connections when built with NSS.
nss: support pre-ALPN versions
http2: updated README after NSS addition

Changed the support to a little matrix and added brief explanation of
what ALPN and NPN are for.
lib1515.c: Fixed various compilation warnings

lib1515.c:38:26 warning: unused parameter 'curl'
lib1515.c:38:81 warning: unused parameter 'ptr'
lib1515.c:38:5 warning: no previous prototype for 'debug_callback'
lib1515.c:46:5 warning: no previous prototype for 'do_one_request'
lib1515.c:120:3  warning: ISO C90 forbids mixed declarations and code

As well as some code policing such as white space and braces.
--help: add missing --tlsv1.x options
tool_cfgable: Introduced config_free() function
tool_cfgable: For consistency renamed init_config() to config_init()
runtests: Disable valgrind when debugging

This was already mostly being done, except that analysis after the
test still assumed that the valgrind log files would be available. An
alternative way to handle the valgrind + gdb combination could be to
enable one of the valgrind debugger hooks.