Rewrite to use the pure JS zookeeper client library

- [ ] The purejs `node-zookeeper-client` does throw when some unexpected things happen so some `try`s are probably needed in here.
- [ ] Fix tests / travis / the vm
Or I can just add state guards at the point of use. Not that bad.