lots of improvements
* allow setting dial timeout for backend (for now hardcoded, idea to taking it out to app arguments)
* use tomb to handle graceful goroutines closing (tomb.v2)
* channel based recv, send and request processing, this will help creating decoupled tasks (zxid, watch, ...)