etcdserver: refactor cluster and clusterStore

Integrate clusterStore into cluster, and let cluster become the source of
cluster info.

fixes #1354 

early feedback welcome
@unihorn I think `peerURLsToString(urls []url.Url) string` is not terrible and is just as testable. It's a temporary value, after all. 

This just seems like a lot of run around and new structs/functions for something simple.