fixes #2686
fixes #2689, implemented proper isSameRM() methods on the XaResources based on cluster group name
fixes #2577
change conditions
change Exception, add individual tests and add checking for null array.
fixed imports
ByteArrayObjectDataOutput when writing to an explicit location in a buffer fixed
(cherry picked from commit 2e3fef3)
add proper methods to provide timeout from xa resource to underlying transaction implementation, fixes #2569

Conflicts:
	hazelcast-ra/hazelcast-jca/src/main/java/com/hazelcast/jca/XAResourceWrapper.java
	hazelcast/src/main/java/com/hazelcast/transaction/impl/TransactionImpl.java
resolve conflicts
backport #2720, correct save/remove behiour of enum indexes