Problem: can't end timers after zloop exit

- zloop_timer_end always stored timers on zombie list; however it
  only processed that list inside reactor. So if reactor was already
  terminated, and then caller tried to end timers, result was an
  assertion failure in zloop_destroy, as self->zombies was not empty.
- solution is to mark zloop as terminated when it exits reactor loop
  and then not use zombie list, on a terminated zloop.
Include zmq_utils.h

- Fixes #438
- zmq_z85_* methods were removed from zmq.h, as they belong in zmq_utils.h