Extend zmq::wsa_error_to_errno()

The list of error codes is taken from zmq::wsa_error_no(). Most of the
new WSA error codes result in EFAULT, but some return a more specific
value (even EAGAIN).

Backport of zeromq/libzmq#1072
Merge pull request #83 from olafmandel/backport_1072

Extend zmq::wsa_error_to_errno()
Fix failed assertion for WSAENOTSOCK

In de9eef306, the error number assigned to WSAENOTSOCK was EFAULT, but
zmq.cpp:919 expects an ENOTSOCK in this case.
Merge pull request #84 from hintjens/master

Fix failed assertion for WSAENOTSOCK
Fixed typo in doc example
Merge pull request #86 from hintjens/master

Fixed typo in doc example
Add static compilation on CMake
Merge pull request #87 from guidefloripa/master

Add static compilation on CMake
builds/zos/* portability files to z/OS UNIX

builds/zos includes:
    README.md: Overview of z/OS UNIX System Services port (Markdown)
    makelibzmq: Compile src/*.cpp and make libzmq.a
    maketests:  Compile tests/*.cpp and make test_* executables
    runtests:   Run tests/test_* executables and report results
    makeclean:  Remove built files
    zc++: /bin/c++ wrapper supplying required build arguments
    cxxall: run zc++ for all *.cpp files in directory

    platform.hpp: pre-generated (and edited) src/platform.hpp for z/OS
    test_fork.cpp: updated tests/test_fork.cpp that completes on z/OS
Extend z/OS UNIX port to allow building DLL

Updated:
   README.md:  describes process of building/using DLL
   makelibzmq: Build DLL as well as static library (unless BUILD_DLL=false)
   maketests:  Dynamically link to ../src/libzmq.so if present
   runtests:   Explicitly place ../src at start of LIBPATH
   makeclean:  Also remove files created for DLL
   cxxall:     Bumped updated date to reflect last edit
z/OS: Documented SIGPIPE considerations

Updated:
    README.md: Documented need for application to handle/ignore SIGPIPE
z/OS: Make builds/zos scripts executable
z/OS: Loop on EAGAIN on close() in ~signaler

Updated:
    src/signaler.cpp: Add close_wait_ms() static function to loop
       when receiving EAGAIN in response to close(), with ms long
       sleeps, up to a maximum limit (default 2000ms == 2 seconds);
       used in signaler_t::~signaler_t() destructor.
z/OS: signal(SIGPIPE, SIG_IGN) for tests

Updated:
   tests/testutil.hpp: Add signal(SIGPIPE, SIG_IGN) to
        setup_test_environment(), on z/OS (__MVS__)
z/OS: Transferrring from GitHub to z/OS UNIX

Updated:
   builds/zos/README.md: Outlined process to transfer source from
     GitHub to z/OS UNIX System Services, including character set
     conversion for the source
z/OS: Avoid removing libzmq.pc.in in makeclean
Merge pull request #89 from ewen-naos-nz/zos

z/OS UNIX System Services port
Corrected typo in ZMQ_STREAM example
Merge pull request #90 from vogonsoft/master

Corrected typo in ZMQ_STREAM example
Clean up after using randombytes from libsodium

When Curve authentication is used, libsodium opens a file
descriptor to /dev/urandom to generate random bytes. When
the ZMQ context terminates, it should ensure that file gets
closed.