calloc: introduce LIBSSH2_CALLOC()

A simple function using LIBSSH2_ALLOC + memset, since this pattern was
used in multiple places and this simplies code in general.
userauth.c: improve readability and clarity of for-loops
CMake build working with Visual Studio 8.

Tested:
- static
- 32/64-bit
- OpenSSL/WinCNG
- Without zlib
Fix test for required crypto backend.
Fix case issue so examples build on Linux.
Let mansyntax.sh work regarless of where it is called from.
Invoke ssh2 test through wrapper that invokes sshd.
Mark test script executables as advanced.

The user usually will not want to set these manually.  They either have them or they don't.
Copy OpenSSL DLLs explicitly on Windows, rather than using fixup_bundle.

fixup_bundle was causing problems on Linux and didn't always find the right DLL on Windows.  It was also really slow on both platforms.

This commit just copies the two OpenSSL DLLs for each target that needs it.
Copy libssh2 DLL to example and test directories when building as a shared library.

Otherwise they won't work out-of-the-box.
Added Travis CI file.
Fix Travis libgcrypt dependency.
Summarise chosen optional features after configuring.
Prevent RUNTIME_DEPENDENCIES list growing on every configuration.

This change stops appending to RUNTIME_DEPENDENCIES and, instead, sets it directly on each CMake configuration.
Let CMakeLists.txt control the libssh2 version.

This will allow us to use the version number in the packages, when we add support for packaging.
Support packaging with CPack.
Test packaging using Travis CI.
Test cross-compiling 32-bit on 64-bit Travis CI.
Refresh Travis CI packages before installing dependencies.
Resolve Travis CI libc-dev 32-bit dependency problem.