Fixed rules for identities

Previously ZMTP required user-defined identities to NOT start
with binary zero. This was a cause of hard-to-find errors in
apps using randomized identities, e.g. UUIDs, and as the rule
solves no actual problem, we removed it, in libzmq and in the
protocol spec.
Problem: ZRE cannot work over inproc:// or ipc://

Solution: remove assumption of TCP in protocol (ipaddress and port)
and replace with a single "endpoint" field that can refer to any
transport.
Removed ZRE-LOG, as this is better done out of band

- some Zyre apps need syslog
- ZeroMQ-based logging can be done via a separate layer
Merge pull request #46 from hintjens/master

Various fixes to RFC 36