etcdserver: Calculate IDs based on PeerURLs and --initial-cluster-name

Removes the notion of node name being anything more than advisory or
command-line grouping, and adds checks for bootstrapping the command
line. IDs are consistent if the URLs and cluster name (as a token) are consistent.

Adds a flag --initial-cluster-name and mentions it in clustering.md
I understand that we need to save the name field if we want to keep it as same as it was before Set().

But if we do not need to use c.name to generate the clusterID, then why do we need to even keep it?