tool_urlglob.c: reverse two loops

By counting from 0 and up instead of backwards like before, we remove
the need for the "funny" check of the unsigned variable when decreased
passed zero. Easier to read and less risk for compiler warnings.
copyright: Updated the copyright year following recent updates
darwinssl: fix incorrect usage of aprintf()

Commit b13923f changed an snprintf() to use aprintf(), but the API usage
wasn't correct, and was causing a crash to occur. This fixes it.
opts: Warn CURLOPT_TIMEOUT overrides when set after CURLOPT_TIMEOUT_MS

Change CURLOPT_TIMEOUT doc to warn that if CURLOPT_TIMEOUT and
CURLOPT_TIMEOUT_MS are both set whichever one is set last is the one
that will be used.

Prior to this change that behavior was only noted in the
CURLOPT_TIMEOUT_MS doc.
KNOWN_BUGS: the SFTP code doesn't support CURLINFO_FILETIME
tool_urlglob.c: partly reverse dc19789444

The loop in glob_next_url() needs to be done backwards to maintain the
logic. dc19789444 caused test 1235 to fail.
tool_urlglob: unify return codes to use CURLcode

There was a mix of GlobCode, CURLcode and ints and they were mostly
passing around CURLcode errors. This change makes the functions use only
CURLcode and removes the GlobCode type completely.
tool_operate: we prefer 'CURLcode result'
glob_next_url: make the loop count upwards

As the former contruct apparently caused a compiler warning, mentioned
in d8efde07e556c.
SFTP: work-around servers that return zero size on STAT

Bug: http://curl.haxx.se/mail/lib-2014-12/0103.html
Pathed-by: Marc Renault
connect: singleipconnect(): properly try other address families after failure
IPV6: address scope != scope id
There was a confusion between these: this commit tries to disambiguate them.
- Scope can be computed from the address itself.
- Scope id is scope dependent: it is currently defined as 1-based local
  interface index for link-local scoped addresses, and as a site index(?) for
  (obsolete) site-local addresses. Linux only supports it for link-local
  addresses.
The URL parser properly parses a scope id as an interface index, but stores it
in a field named "scope": confusion. The field has been renamed into "scope_id".
Curl_if2ip() used the scope id as it was a scope. This caused failures
to bind to an interface.
Scope is now computed from the addresses and Curl_if2ip() matches them.
If redundantly specified in the URL, scope id is check for mismatch with
the interface index.

This commit should fix SF bug #1451.
parseurlandfillconn(): fix improper non-numeric scope_id stripping.
Fixes SF bug 1149: http://sourceforge.net/p/curl/bugs/1449/
if2ip: dummy scope parameter for Curl_if2ip() call in SIOCGIFADDR-enabled code.