Add etcd FairBalancer

Make sure to create a local rand and seed it. It has to be seeded and it's not nice to manipulate global state in a library:

```go
var random = rand.New(rand.NewSource(time.Now().UnixNano()))
```