unit tests for countdownlatch
update for tests
update for tests
added and reorganized unit tests for BasicQueueTest and QueueListenerTest
fixing #3127

-  instead of removing entry on map.remove() it's just marked it as a tombstone and set TTL.
   it allows to compare & order subsequent events. When TTL is expired then the tombstone
   and associated vector clock are removed.

-  when there is an incoming event while a tombstone exists then it checks if the tombstone
   is "old enough". If so then the incoming event is always accepted. It's assumed the tombstone
   on the other side already expired and its clocks were reset. If the local tombstone is not
   "old enough" then a normal vector clock comparison is used.

-  Tombstone TTL is currently hard-coded to 5 minutes. I'm not sure if that's something
   we want to expose to users. It's effectively a trade-off between memory consumption and consistency.

-  I use the expirationScheduler to remove tombstones. The original code had a Cleaner class,
   however it wasn't really scalable - it was doing a full table scan every 5s in order to locate
   expired tombstones (which weren't even created by the original code!). The Cleaner was removed.

-  A tombstone is currently considered as "old enough" if it's closer to expiration than its creation
   on a time scale.
more descriptive method naming
stress tests belongs to a nightly category
made some corrections and added unit tests
Fixes #3246 Deadlock when multicast and tcp are enabled simultanious.

XML Config Builder now rejects this
When a member starts, there is validation if JoinConfig is valid
Improved JoinConfig.verify test
added null check for addAllInternal()
added test
fixed checkstyle
Merge branch 'master' of https://github.com/hazelcast/hazelcast
Merge branch 'master' of https://github.com/hazelcast/hazelcast
ReplicatedMap now uses Clock instead of System to get a current timestamp
Removed a redundant nullcheck in the PutAllOperation
Removed load of known null value in DefaultRecordStore
Removed an unused Random field in the BasicOperationScheduler
Removed unused random
Added correct test annotations on the JoinConfigTest