curl: make --progress-bar update the line less frequently

Also, use memset() instead of a lame loop.

The previous logic that tried to avoid too many updates were very
ineffective for really fast transfers, as then it could easily end up
doing hundreds of updates per second that would make a significant
impact in transfer performance!

Bug: http://curl.haxx.se/mail/archive-2013-07/0031.html
Reported-by: Marc Doughty
curl: --progress-bar max update frequency now at 5Hz
curl: follow-up for commit 5af2bfb9

Use tvnow() and tvdiff() to avoid introducing new linkage issues
curl: second follow-up for commit 5af2bfb9

Display progress-bar unconditionally on first call
Add in the files needed to build libcurl shared images on VMS.

Update the packages/vms/readme file to be current.

Also some files for the GNV based build were either missing or needed an
update.

curl_crtl_init.c is a special file that is run before main() to
set up the proper C runtime behavior.

generate_vax_transfer.com generates the VAX transfer vector modules from
the gnv_libcurl_symbols.opt file.

gnv_conftest.c_first is a helper file needed for configure scripts to
come up with the expected answers on VMS.

gnv_libcurl_symbols.opt is the public symbols for the libcurl shared
image.

gnv_link_curl.com builds the shared libcurl image and rebuilds other
programs to use it.

macro32_exactcase.patch is a hack to make a local copy of the VMS Macro32
assembler case sensitive, which is needed to build the VAX transfer modules.

report_openssl_version.c is a tool for help verify that the libcurl
shared image is being built for a minium version of openssl.
packages/vms/Makefile.am: add latest file additions to EXTRA_DIST
DOCS: Added IMAP URL example for listing new messages

In addition to listing the folder contents, in the URL examples, added
an example to list the new messages waiting in the user's inbox.
Revert "DOCS: Added IMAP URL example for listing new messages"

This reverts commit 82ab5f1b0c7c3f as this was the wrong place to
document the complexity of IMAP URLs and Custom Requests.
multi: remove 'Curl_one_easy' struct, phase 1

The motivation for having a separate struct that keep track of an easy
handle when using the multi handle was removed when we switched to
always using the multi interface internally. Now they were just two
separate struct that was always allocated for each easy handle.

This first step just moves the Curl_one_easy struct members into the
SessionHandle struct and hides this somehow (== keeps the source code
changes to a minimum) by defining Curl_one_easy to SessionHandle

The biggest changes in this commit are:

 1 - the linked list of easy handles had to be changed somewhat due
     to the new struct layout. This made the main linked list pointer
     get renamed to 'easyp' and there's also a new pointer to the last
     node, called easylp. It is no longer circular but ends with ->next
     pointing to NULL. New nodes are still added last.

 2 - easy->state is now called easy->mstate to avoid name collision
multi: remove easy_handle struct field

It isn't needed anymore
multi: remove the multi_pos struct field

Since Curl_one_easy is really a SessionHandle now, this indirection
doesn't exist anymore.
multi: rename all Curl_one_easy to SessionHandle
multi: remove the one_easy struct field

Since the merge of SessionHandle with Curl_one_easy, this indirection
isn't used anymore.
multi: remove data->state.current_conn struct field

Not needed
configure: rephrase the notice in _XC_CHECK_VAR_*

Instead of claiming it is an error, we call it a "note" to reduce the
severity level. But the following text now says the [variable] "*should*
only be used to specify"... instead of previously having said "may".
configure: don't error out on variable confusions, just warn
Skip more untrusted certificates.

Christian Heimes brought to our attention that the certdata.txt
format has recently changed [1], causing ca-bundle.crt created
with mk-ca-bundle.[pl|vbs] to include untrusted certs.

[1] http://lists.debian.org/debian-release/2012/11/msg00411.html
formadd: wrong pointer for file name when CURLFORM_BUFFERPTR used

The internal function that's used to detect known file extensions for
the default Content-Type got the the wrong pointer passed in when
CURLFORM_BUFFER + CURLFORM_BUFFERPTR were used. This had the effect that
strlen() would be used which could lead to an out-of-bounds read (and
thus segfault). In most cases it would only lead to it not finding or
using the correct default content-type.

It also showed that test 554 and test 587 were testing for the
previous/wrong behavior and now they're updated as well.

Bug: http://curl.haxx.se/bug/view.cgi?id=1262
Reported-by: Konstantin Isakov
Revert "configure: don't error out on variable confusions, just warn"

This reverts commit 6b27703b5f525eccdc0a8409f51de8595c75132a.
configure: warn on bad env variable use, don't error

Use XC_CHECK_BUILD_FLAGS instead XC_CHECK_USER_FLAGS.