introduce cluster store

TODO

- [x] Rename Peer to Machine
- [x] Parse the new space separated bootstrap-config format
- [x] Ensure that the NodeName.ID()'s don't have collisions
- [ ] Generate initial cluster ID from a similar hash of the bootstrap-config
- [ ] Write documentation on static bootstrap

I was thinking
```
if self == nil {
   log.Fatalf("etcd: no ID defined for this server")
}
if self.ID == raft.None {
   log.Fatalf("etcd: cannot use None(%d) as etcdserver id", raft.None)
}
```