ISPN-2787 NPE after ReplaceCommand

* Add MergeDuringReplaceTest to reproduce the issue.
* Fix one of the ControlledRpcManager.invokeRemotely methods that was ignoring the actual result and was always returning null.
* Minor logging improvements to be able to debug this issue.
* Remove harmfull optimization from RpcManagerImpl.invokeRemotely(Collection<Address> recipients, ReplicableCommand rpcCommand, ResponseMode mode, long timeout, boolean usePriorityQueue, ResponseFilter responseFilter) that was not going remotely and neither threw any exception if the destinations were no longer in cluster and current node was the only member.
ISPN-2787 NPE after ReplaceCommand

Assert the expected exception is thrown in MergeDuringReplaceTest
ISPN-2888 ManagedOperation.name() is ignored when registering JMX operations
ISPN-2865 Error calling clear() via JMX on a transactional cache with autoCommit=false
Bump version to 5.2.4-SNAPSHOT
ISPN-2825 ClusterTopologyManagerImpl should not hold a lock while invoking an RPC

If the REBALANCE_START command takes a long time to be processed on
one of the nodes, the REBALANCE_CONFIRM commands from the rest of
the nodes are blocked and end up filling the OOB thread pool.

Add two new tests for large clusters.
Move CacheCreationStressTest to the profiling group.
ISPN-2899 CLI: fix container stats and help
ISPN-2897 NPE in DefaultConsistentHash

If any partition is rebalancing during a merge, the merge coordinator
should end the rebalance it and start a new one with all the members.
ISPN-2777 ReplicatedConsistentHash.isKeyLocalToNode(node, key) should return false if the node is not a member yet

* Also added some sanity checks to detect illegal usage.
* Fix incomplete transport mocking in PutForExternalReadTest.testExceptionSuppression and resolve some generics related compiler warnings.
ISPN-2757 ReplaceCommand in REPL mode cluster does not perform any modifications if the entry was not yet transfered during rehashing

* ReplicationInterceptor needs to be smart an if the command is conditional but the affected value is not yet available locally because state transfer did not have the chance to fetch it yet then we should fetch it now.
* The whole logic where the coordinator is the main lock owner has to be replaced to use the first topology member rather than the coordinator (the coordinator might not even run the cache in question)
* ClusteringDependentLogic needs to be split in separate implementations for each cache mode
Introduce a common base class for replication and distribution interceptors for code reuse

Move some methods from DistributionManager to BaseDistributionInterceptor.
Enabling tests that were disabled due to ISPN-2106 (no longer relevant on 5.2 and tests seem to work)