Documentation: Clarify etcd security documentation

Signed-off-by: Vincent Ambo <vincent@kivra.com>
raft: commitIndex=min(leaderCommit, index of last new entry)
main: not use loop variable in goroutine in loop body

Because loop variable are reused in following loops.
flags/urls: assign urls instead of append
Merge pull request #1217 from unihorn/146

main: not use loop variable in goroutine in loop body
Merge pull request #1218 from unihorn/147

flags/urls: assign urls instead of append
flags/urls: reject url without port

For now, if etcd receives a url without port, it will listen on a random
port, which is useless.
etcdserver: publish self info when start
etcdserver: minimize input info
flags: replace Addrs with IPAddressPort
pkg/flags: add NewURLs helper
pkg: add URLsFromFlags
etcd: support v0.4.6 addr flags

The -addr, -bind-addr, -peer-addr, and peer-bind-addr flags are
superseded by -advertise-client-urls, -listen-client-urls,
-advertise-peer-urls, and -listen-peer-urls, respectively.
If any of the former flags are provided, however, they will still
work. If the new counterparts to the old flags are provided, etcd
will log an error and fail.
etcdserver: move grep member logic into publish func
Merge pull request #1219 from unihorn/148

flags/urls: reject url without port
Merge pull request #1201 from unihorn/143

etcdserver: publish self info when start
Merge pull request #1220 from bcwaldon/bkcompat

Backwards-compatibility with v0.4.6 addr-related flags
pkg/types: introduce a URLs type

Cleanup the usage of URLs into its own type so we don't have to use a
FlagValue everywhere we have a list of URLs.
Merge pull request #1221 from philips/fixing-stuff

pkg/types: introduce a URLs type
raft: add removed

The usage of removed:
1. tell removed node about its removal explicitly using msgDenied
2. prevent removed node disrupt cluster progress by launching leader election

It is set when apply node removal, or receive msgDenied.