Problem: allow Zyre to work across any transport

* Added explicit bind/connect methods to API so application can build
  the cluster explicitly, using any available ZeroMQ transport.

* Application can now switch off UDP discovery by setting port to 0.

* Replaced ipaddress / port fields with endpoint so that nodes can
  now interconnect across any ZeroMQ transport.
Merge pull request #198 from hintjens/master

Problem: allow Zyre to work across any transport
Problem: zyre_log.c:121: zyre_log_info: Assertion `self' failed.

Caused when sending JOIN/LEAVE commands to a node that isn't yet
started (so has no logger).

Solution: do not try to log these commands if the node wasn't
started yet.

Fixes #197.
Merge pull request #199 from hintjens/master

Problem: zyre_log.c:121: zyre_log_info: Assertion `self' failed.