security: don't generate zero keys when CURVE support is missing

If CURVE support is missing at runtime, zcert_new() will unfortunately
generate zeroed keys instead of failing. These zeroed keys will later
cause assertions in the zeromq code.

Instead replace zcert_new() with zmq_curve_keypair()/zcert_new_from().
zmq_curve_keypair() should fail with errno == ENOTSUP if CURVE
support is missing from libzmq, so we can generate a reasonable
error instead of silently failing.

Fixes #7
build: configure time check for CURVE support in libzmq

Use AC_RUN_IFELSE with zmq_curve_keypair() to detect at configure
time if the libzmq we're building against is compiled with
security (libsodium).

Fixes #7
Merge pull request #10 from grondo/keygen-fixes-3

keygen fixes