Merge pull request #648 from ricnewton/master

Fix tests on windows
Was sending NULL mechanism name with extra null (fixed)
Fixed comments on curve_keygen tool
Added ZMQ_ZAP_DOMAIN socket option

* This is passed to the ZAP handler in the 'domain' field

* If not set, or empty, then NULL security does not call the ZAP handler

* This resolves the phantom ZAP request syndrome seen with sockets where
  security was never intended (e.g. in test cases)

* This means if you install a ZAP handler, it will not get any requests
  for new connections until you take some explicit action, which can be
  setting a username/password for PLAIN, a key for CURVE, or the domain
  for NULL.
Merge pull request #649 from hintjens/master

Fixed minor error in NULL mechanism (spec was wrong)
Implement non-blocking shutdown command that unblocks other threads waiting on blocking operations.
Merge remote-tracking branch 'upstream/master'