Infinispan modularity

This is for _master_ only, I'll send different pull requests for branches 4.4 and 4.5 when this is integrated as these need a slightly different solution, but would hope to get this one accepted first.

https://hibernate.atlassian.net/browse/HSEARCH-1692

The summary of the changeset is to add

    currentThread.setContextClassLoader( InfinispanConfigurationParser.class.getClassLoader() );

before parsing the Infinispan configuration file.
> Also why is there this line in the constructor:

Because we use that field in a method below??
I don't understand were this questions are coming from, how does it relate to this PR.