Problem: zmsg_send() failed if message was null

Incorrect code to test for zero-sized messages was outside
non-NULL check on self. Moved inside. Added test for this in
selftest.