etcd: use cluster-level index as AfterIndex on first Watch()
We can't trust modifiedIndex from the first Get() operation cause under certain scenarios it will report a lower index than needed. A good example is that the last operation under the service directory is a delete operation as delete operations won't bump the modifiedIndex of the directory.
This can be solved by using the cluster wide index (X-Etcd-Index HTTP response value) for the first Watch() operation
This MR ships the commits from !44 (merged), !45 (merged) and !46 (merged)