ISPN-2956 Hot Rod conditional operations and transactional caches

* Transactional caches are required in order to be able to guarantee
correct retry logic for Hot Rod operations relying on conditional
operations, or operations where the previous value is returned.
* WARN messages have been added for when conditional or operations
needing previous value are executed against non-transactional caches.
* Documentation updated with a section on Java Hot Rod client failover
capabilities and its effects on conditional operations.
ISPN-3530 ISPN-1855 Keep per-cache CH to route requests correctly

* It fixes an issue where accessing non-distributed caches can
break topology updates.
* Add asymmetric routing test that forces each server to hash
only to itself to replicate situations where different distributed
caches have different CH.