Tell the session why the engine has stopped
Merge pull request #1041 from hurtonm/master

Tell the session why the engine has stopped
Fix bug in reporting protocol errors
Don't reconnect on protocol errors
Merge pull request #1037 from hintjens/master

Problem: artificial restriction on binary identities
Merge pull request #1042 from hurtonm/master

Fix bug in reporting protocol errors
Merge pull request #1043 from hurtonm/dont_reconnect_on_protocol_errors

Don't reconnect on protocol errors
Problem: security tests block on zmq_send

The expect_bounce_fail () helper assumed that messages could always
be sent. However in some cases zmq_send() blocks, due to there not
being any outgoing pipe. This changed in 77f5f7, where previously
there would be a pipe that kept trying to reconnect forever.

Solution: use a send timeout and check for EAGAIN if sending failed.