Disallow re-joining, see #2873

* Disallow join requests when already part of a cluster
* Remove wipe state when joining, since join can only be
  performed from empty state
* When trying to join, only accept gossip from that member
* Ignore gossips from unknown (and unreachable) members
* Make sure received gossip contains selfAddress
* Test join of fresh node with same host:port
* Remove JoinTwoClustersSpec
Welcome message as reply to Join, see #2873
Retry unsucessful join request, see #2873
Uid in cluster Member identifier, see #2873

* To be able to distinguish nodes with same host:port
  after restart.
* Add addressUid to RARP
* Ignore gossip with wrong uid
* Renamed Remove command to Shutdown
rename Member.addressFIXME
Use uid in vclock identifier, see #2873
Include to UniqueAddress in GossipEnvelope, see #2873
Update sample, Member apply is private, see #2873
Minor corrections, see #2873
Place uid in AddressUidExtension, see 2873
Disabled config duration syntax and cleanup of io settings, see #2873
Fix failing UnreachableNodeJoinsAgainSpec, see #2873