proxy not working on master

The proxy needs ClientURLs, not PeerURLs: https://github.com/coreos/etcd/blob/master/main.go#L235

Since these aren't deducible from the initial-cluster-config, need to come up with a synchronisation mechanism for the proxy to retrieve this information (periodically) from the cluster
d.uf need to do network io. we should not do this when holding a lock. 
```
urls := d.uf()
d.Lock()
defer d.Unlock()
...
```