refactoring; use node-etcd