z/OS: Documented SIGPIPE considerations

Updated:
    README.md: Documented need for application to handle/ignore SIGPIPE
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: 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.
Merge pull request #1138 from ewen-naos-nz/zos

z/OS UNIX System Services port: EAGAIN, SIGPIPE
z/OS: Make builds/zos scripts executable
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
Remove "const" from std::map key

Updated:
    src/metdata.hpp: Remove explicit "const" from key of std::map<>
       because the key is implicitly const already (see
       http://en.cppreference.com/w/cpp/container/map and
       http://www.cplusplus.com/reference/map/map/).

On some platforms (such as z/OS UNIX System Services) explicitly
declaring the map key as "const" causes template expansion errors
as it tries to create separate allocators for "const const std::string"
and "const std::string" only to find that they clash.  (Presumably
some compilers collapse these into one earlier.)

There are no template expansion errors if the map key is left to be
implicitly const.
Include testutil.hpp if using SETTLE_TIME

Updated:
   tests/test_connect_delay_tipc.cpp
   tests/test_sub_forward_tipc.cpp
   tests/test_term_endpoint_tipc.cpp
z/OS: Update build defines:

Updated:
    builds/zos/cxxall: Defines ZMQ_HAVE_ZOS for platform portability;
        define ZMQ_USE_POLL _instead_ of ZMQ_FORCE_POLL, due to change
        in src/poller.hpp since ZeroMQ 4.0.x branch
z/OS: Autodetect tests to run

Updated:
    builds/zos/runtests: Extract tests to run from tests/Makefile.am
      at runtime, rather than hard coding tests list (to simplfy
      later maintenance).  test_*_tipc is excluded as BUILD_TIPC is
      not defined on z/OS UNIX System Services.  XFAIL_TESTS are also
      excluded, following current logic in tests/Makefile.am
z/OS: Skip pthread_{get,set}schedparam

Updated:
    src/thread.cpp: On older z/OS UNIX System Services,
        pthread_{get,set}schedparam is not present (searching the
        Internet suggests it may be present in later version than
        the one being used for z/OS UNIX System Services porting).

        Make zmq::thread_t::setSchedulingParameters() a no-op on
        z/OS UNIX System Services.

    NOTE: pthread_{get,set}schedparam appear to have been introduced
    by POSIX.1-2001 or IEEE 1003.1-2004 so may not be universally
    available, and thus more platforms may need this "no-op" treatment.
z/OS: builds/zos/platform.hpp for libzmq 4.1.0
z/OS: chmod +x builds/zos/{cxxall,runtests}
z/OS: Updated portability notes

Updated:
    builds/zos/README.md: Updated with portability notes resulting
       from building zeromq/libzmq/master as of 2014-07-23 on z/OS
       UNIX System Services.

       Current z/OS UNIX status: all expected tests pass, except
       "test_proxy", which hangs and times out.
Merge pull request #1139 from ewen-naos-nz/zos

z/OS: Updated to build libzmq git master
Problem: does not install man pages correctly when out of tree

Solution: fix Makefile.am

As per Richard Sharpe on zeromq-dev.
Merge pull request #1142 from hintjens/master

Problem: does not install man pages correctly when out of tree
use enum retired_fd instead of -1
define encoding for message metadata to be UTF8

clarifies that these are text fields,
and removes ambiguity about how to create proper
text object from stored bytes.