move zk code for the service watcher into the zzk

Genericized listeners and moved service watchers into the zzk






What's this doing?