avoid EADDRINUSE error when running selftest repeatedly

"writer" socket is bind
"reader" socket is connect

When the bind socket is closed first, the TIME_WAIT state occurs for
the listening side. Thus when the selftest is executed too soon after
a previous run, the bind will fail with EADDRINUSE.

By closing the connecting socket first, the TIME_WAIT state occurs for
the connecting side, which is using an ephemeral port, thus the above
problem is avoided.
Deregister socket monitor on destroy
bypass autoconf detection of libuuid under Windows platform

When building CZMQ using MinGW32 and configure script, HAVE_LIBUUID
will not be defined in platform.h.

Enable uuid unconditionally under Windows platform.
Merge pull request #340 from claws/zmonitor_shutdown

Deregister socket monitor on destroy
Merge pull request #339 from pijyoi/master

avoid EADDRINUSE error when running selftest repeatedly