Problem: default LINGER value is insane

Solution: use a sane value, e.g. 2 seconds

Fixes #1247
Problem: No error-checking of setsockopt ZMQ_CURVE_* z85 keys. Solves #1094.
Add tests for issue #1094.
Merge pull request #1250 from c-rack/master

No error-checking of setsockopt ZMQ_CURVE_* z85 keys. Solves #1094.
Merge pull request #1248 from hintjens/master

Problem: default LINGER value is insane
Use consistant spelling in documentation

behavior -> behaviour
initialize -> initialse
initialization -> initialisation
Fix typos.
Merge remote-tracking branch 'upstream/master'
Merge pull request #1251 from johntconklin/master

Use consistent spelling, fix typos.
Problem: return code of sodium_init() is not checked.

There are two todo comments in curve_client.cpp and curve_server.cpp that suggest
checking the return code of sodium_init() call. sodium_init() returns -1 on error,
0 on success and 1 if it has been called before and is already initalized:
https://github.com/jedisct1/libsodium/blob/master/src/libsodium/sodium/core.c
Merge pull request #1252 from c-rack/master

Problem: return code of sodium_init() is not checked.
use more conservative 30 second default timeout for LINGER

Regression in #1248 can cause lost messages at exit.
Merge pull request #1253 from minrk/linger-timeout

use more conservative 30 second default timeout for LINGER
Fix busy-polling bug in pgm_sender causing it to consume CPU cycles
Re-enable pollout before cancelling tx timeout
Merge pull request #1255 from klaussfreire/master

Fix busy-polling when reaching the rate limit