ISPN-3777 ThreadLocal in AbstractInvocationContextContainer is leaking
instances of LocalTxInvocationContext

* InvocationContextInterceptor now sets the InvocationContext thread-local
* Batching mode now also uses InvocationContextInterceptor, so there is
  only one place where the thread local is set/removed.
* InvocationContextFactory was extracted from InvocationContextContainer
* The thread-local is not set when the classloader is not needed, or when
  the call classloader (either from AdvancedCache.with(ClassLoader) or from
  the thread's context classloader) is the same as the configured
  classloader (by default, the context classloader of the thread that
  created the GlobalConfiguration).
* DefaultContextClassResolver now prefers the classloader in the
  configuration to the current thread's context classloader (but if they
  are different, the context classloader was already set in the
  InvocationContext and returned by EmbeddedContextClassResolver).
ISPN-3659 Cache stop should clear thread-local ExtendedRiverMarshaller or their instance caches
ISPN-3608 Parse IPv4 or IPv6 server addresses
Fix some usages of Hibernate Search deprecated api
ISPN-3828 Some query and remote query tests using filesystem Lucene directory need to ensure the index is clean before and after the test
ISPN-3724 Don't make the REST target migrator complain about spurious
keys injected by other source migrators
ISPN-3048 Eviction needs to be transactional

* Fixed issues with manual eviction to make it more reliable
* Added tests for manual and size based eviction which happens
concurrently with other operations
Add javadoc for the query dsl
ISPN-3755 Add more detailed description of the filtering operators supported by the new query DSL
ISPN-3772 Reduce marshalling payload sizes

* Unless compatibility and query mode are enabled, do not use
Flag.OPERATION_x.
* Flags, which are shipped in EnumSet instances, are now marshalled
using Externalizers, leading to a reduction in size as a result of
not writing class information.
* Except for primitive types, arrays can be shrinked by using
exterternalizers for those arrays more commonly shiped. This results
in array type information not being written to the payload.
* Add Arrays$ArrayList to the types covered by the ListExternalizer,
which it now covers for all list implementations.

Flags also used in query
Ignore Checkstyle metadata produced by the Eclipse plugins
ISPN-3799 Update base CHMv8 to rev 1.120

* It primarily fixes and edge case where CHM.get will sometimes fail to
find a key present in the map.
ISPN-3839 Compatibility Mode tests didn't shutdown all the cache managers
Update surefire plugin
Increase heap size for coverage test
Merge branch 'surefire_update' of github.com:vjuranek/infinispan into surefire_update