ISPN-3015 Add tests to cover more types of queries
ISPN-3038 jcache module pom should honor skipTests property

Add the skipTests property to the list of command line properties passed to the child build.
ISPN-3031 Forked module builds ignore log4j.configuration passed on the command line
ISPN-3034 Query should also filter out nulls when retrieving results through CacheQuery.iterator()
ISPN-907 HotRod SSL
ISPN-2609 Infinispan SpringCache throws java.lang.NullPointerException:
Null values are not supported!

Add support for storing null values in and retrieving null values from a
SpringCache. Use solution provided by Roland Csupor as a starting point.

* Introduce NullValue, a singleton class that represents a null value in
a
cache.
* Make SpringCache use NullValue for representing null values in wrapped
Infinispan cache.
Remove unused class MembershipArithmetic
ISPN-2814 RpcManager doesn't return values properly

* Add proper wrapping of ReplicableCommand return values/exceptions into Response objects, to behave exactly as in case of CacheRpcCommands
* Add unit test using some custom commands to prove result wrapping works identically for CacheRpcCommands and ReplicableCommands in general
* CommandAwareRpcDispatcher checks i the result is already a Response to avoid double wrapping for legacy commands that do their own wrapping internally
ISPN-3033 Lucene index stored in a StringBased CacheStore can get an unaligned bufferSize

There is no test as there was a test already; just that the existing test wouldn't
catch this case because the bufferSize wasn't part of the equals contract: the
assertion used the key.equals to verify correct interpretation.
Fixing the equals activated the unit test: org.infinispan.lucene.Key2StringMapperTest

NoopSegmentReadLockerTest had to be fixed too as there was a mistake which wasn't spotted
as it also took advantage of the same equals flaw.
ISPN-3041 Verify Query tuning parameters are applied
ISPN-3026 Upgrade Query to Hibernate Search 4.3.0.Alpha1
ISPN-2985 Allow passing in a pre-built SSLContext to the HotRod server and client (for Server usage)
ISPN-3040 Fix parent POM schema compatibility by placing combine.self on the appropriate elements
Move some needlessly verbose logging from debug to trace and fix misspelling
Add a bit of logging and replace viewId with topologyId
RehashAfterJoinWithPreloadTest cleanup
State transfer code cleanup

* Rename StateTransferManager.notifyEndOfTopologyUpdate() to notifyEndOfRebalance() to reflect its actual purpose
* Remove unused method StateTransferManager.isLocalNodeFirst()
* Clarify javadoc LoLocalTopologyManager.confirmRebalance()
ISPN-2589 NPE in InvalidateL1Command

This NPE can appear in both DIST and REPL mode when we process a topology update in which the current node is not a member.

* There is no reason to invalidate segments if we are not a member, so the call to StateConsumerImpl.invalidateSegments() is guarded with a membership check. This also avoids the NPE.
* StateConsumerImpl.invalidateSegments() was wrongly using CommandsFactory.buildInvalidateFromL1Command where it should actually be buildInvalidateCommand()
* Extract all the logic to restart broken transfers from failed sources into a separate method (StateConsumerImpl.restartBrokenTransfers())
* Rename StateConsumerImpl.notifyEndOfTopologyUpdate() to notifyEndOfRebalanceIfNeeded() to clarify its purpose
* Remove StateConsumerImpl.activeTopologyUpdates member as all the logic regarding it has long become redundant
* Remove one of the overloaded variants of CommandsFactory.buildInvalidateFromL1Command that is no longer used
ISPN-2173 NPE when using XA enlistment without recovery

If recovery is not enabled the call to TransactionXaAdapter.forget() must be no-op instead of failing due to NPE.
ISPN-2549 Invalidation mode caches with pessimistic transactions may result in stale remote locks

* In transactional mode InvalidationInterceptor.invalidateAcrossCluster() should not just send a bare InvalidateCommand to the other nodes. The invalidate command should be wrapped in a PrepareCommand so it executes in a transaction and locks can be acquired and release appropriately.

* EntryWrappingVisitor must also visit InvalidateCommands. This was not needed until now because invalidation was never executed in tx.