ISPN-4068 Add support for IncludeCurrentState to listeners

* Added queuing for all cache types
* Refactored AbstractListenerImpl to allow for better extensibility
* Refactored concrete listeners to only handle needed cases
* Disabled includeCurrentState for non cluster listeners
** Issue with DIST cache where it retrieves all values
** Issue with tx that event will not be produced within scope
*** This would need to show old value always then new in commit
ISPN-4295 Include Lucene Directory in the released WildFly modules
Update to Hibernate Search 5.0.0.Alpha3
Use an HQLParser version which is compatible with Search 5
Apply all package renaming via a replacement script

This is the applied script:

    find . -type f -name \*.java -o -name \*.xml | xargs sed -i '' -f ~/sources/Lucene4Migration.sedscript

where Lucene4Migration.sedscript contains:

s/org.apache.lucene.util.collections.IntToDoubleMap/org.apache.lucene.facet.collections.IntToDoubleMap/g
s/org.apache.lucene.search.Similarity/org.apache.lucene.search.similarities.Similarity/g
s/org.apache.lucene.analysis.KeywordAnalyzer/org.apache.lucene.analysis.core.KeywordAnalyzer/g
s/org.apache.lucene.analysis.SimpleAnalyzer/org.apache.lucene.analysis.core.SimpleAnalyzer/g
s/org.apache.lucene.analysis.StopAnalyzer/org.apache.lucene.analysis.core.StopAnalyzer/g
s/org.apache.solr.analysis.TokenizerFactory/org.apache.lucene.analysis.util.TokenizerFactory/g
s/org.apache.lucene.util.ReaderUtil/org.apache.lucene.index.ReaderUtil/g
s/org.apache.solr.analysis.CharFilterFactory/org.apache.lucene.analysis.util.CharFilterFactory/g
s/org.apache.lucene.analysis.CharTokenizer/org.apache.lucene.analysis.util.CharTokenizer/g
s/org.apache.lucene.search.DefaultSimilarity/org.apache.lucene.search.similarities.DefaultSimilarity/g
s/org.apache.solr.analysis.TokenFilterFactory/org.apache.lucene.analysis.util.TokenFilterFactory/g
s/org.apache.lucene.analysis.ASCIIFoldingFilter/org.apache.lucene.analysis.miscellaneous.ASCIIFoldingFilter/g
s/org.apache.solr.analysis.HTMLStripCharFilterFactory/org.apache.lucene.analysis.charfilter.HTMLStripCharFilterFactory/g
s/org.apache.solr.analysis.ASCIIFoldingFilterFactory/org.apache.lucene.analysis.miscellaneous.ASCIIFoldingFilterFactory/g
s/org.apache.solr.analysis.LengthFilterFactory/org.apache.lucene.analysis.miscellaneous.LengthFilterFactory/g
s/org.apache.solr.analysis.LowerCaseFilterFactory/org.apache.lucene.analysis.core.LowerCaseFilterFactory/g
s/org.apache.solr.analysis.LowerCaseTokenizerFactory/org.apache.lucene.analysis.core.LowerCaseTokenizerFactory/g
s/org.apache.solr.analysis.MappingCharFilterFactory/org.apache.lucene.analysis.charfilter.MappingCharFilterFactory/g
s/org.apache.solr.analysis.ShingleFilterFactory/org.apache.lucene.analysis.shingle.ShingleFilterFactory/g
s/org.apache.solr.analysis.PorterStemFilterFactory/org.apache.lucene.analysis.en.PorterStemFilterFactory/g
s/org.apache.solr.analysis.SnowballPorterFilterFactory/org.apache.lucene.analysis.snowball.SnowballPorterFilterFactory/g
s/org.apache.solr.analysis.StandardFilterFactory/org.apache.lucene.analysis.standard.StandardFilterFactory/g
s/org.apache.solr.analysis.StandardTokenizerFactory/org.apache.lucene.analysis.standard.StandardTokenizerFactory/g
s/org.apache.solr.analysis.StopFilterFactory/org.apache.lucene.analysis.core.StopFilterFactory/g
s/org.apache.solr.analysis.SynonymFilterFactory/org.apache.lucene.analysis.synonym.SynonymFilterFactory/g
s/org.apache.solr.analysis.TrimFilterFactory/org.apache.lucene.analysis.miscellaneous.TrimFilterFactory/g
s/org.apache.solr.analysis.WordDelimiterFilterFactory/org.apache.lucene.analysis.miscellaneous.WordDelimiterFilterFactory/g
s/org.apache.solr.analysis.PhoneticFilterFactory/org.apache.lucene.analysis.phonetic.PhoneticFilterFactory/g
s/org.apache.solr.analysis.PatternTokenizerFactory/org.apache.lucene.analysis.pattern.PatternTokenizerFactory/g
s/org.apache.lucene.queryParser.ParseException/org.apache.lucene.queryparser.classic.ParseException/g
s/org.apache.lucene.queryParser.QueryParser/org.apache.lucene.queryparser.classic.QueryParser/g
s/org.apache.lucene.queryParser.MultiFieldQueryParser/org.apache.lucene.queryparser.classic.MultiFieldQueryParser/g
s/org.apache.solr.analysis.GermanStemFilterFactory/org.apache.lucene.analysis.de.GermanStemFilterFactory/g
s/org.apache.solr.analysis.NGramFilterFactory/org.apache.lucene.analysis.ngram.NGramFilterFactory/g
s/org.apache.lucene.index.TermPositions/org.apache.lucene.index.DocsAndPositionsEnum/g
s/import org.apache.lucene.document.NumericField;/\/\/NumericField was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.document.FieldSelector;/\/\/FieldSelector was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.index.TermDocs;/\/\/TermDocs was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.index.TermEnum;/\/\/TermEnum was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.index.TermFreqVector;/\/\/TermFreqVector was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.document.FieldSelector;/\/\/FieldSelector was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.index.TermVectorMapper;/\/\/TermVectorMapper was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.document.Fieldable;/\/\/Fieldable was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.document.MapFieldSelector;/\/\/MapFieldSelector was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.index.Payload;/\/\/Payload was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.analysis.tokenattributes.TermAttribute;/\/\/TermAttribute was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.document.FieldSelectorResult;/\/\/FieldSelectorResult was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.index.TermPositionVector;/\/\/org.apache.lucene.index.TermPositionVector was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.index.TermVectorOffsetInfo;/\/\/org.apache.lucene.index.TermVectorOffsetInfo was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.lucene.util.SortedVIntList;/\/\/SortedVIntList was removed in Lucene 4 with no alternative replacement/g
s/import org.apache.solr.analysis.BaseTokenFilterFactory;/\/\/org.apache.solr.analysis.BaseTokenFilterFactory was removed in Lucene 4 with no alternative replacement/g
Redefine the Infinispan Query / Hibernate Search dependency structure
Change default lucene_version testing attribute to LUCENE_48
Update to new API: tests to match Lucene 4 API, Service handling changes in the Search SPI
Apply package renaming of Hibernate Search 5 APIs via a replacement script

This is the applied script:

    find . -type f -name \*.java -o -name \*.xml | xargs sed -i '' -f ~/sources/Search5Migration.sedscript

where Search5Migration.sedscript contains:

s/org.hibernate.search.Environment/org.hibernate.search.cfg.Environment/g
s/org.hibernate.search.SearchFactory/org.hibernate.search.engine.SearchFactory/g
s/org.hibernate.search.SearchException/org.hibernate.search.exception.SearchException/g
s/org.hibernate.search.FullTextFilter/org.hibernate.search.filter.FullTextFilter/g
s/org.hibernate.search.Version/org.hibernate.search.engine.Version/g
s/org.hibernate.search.ProjectionConstants/org.hibernate.search.engine.ProjectionConstants/g
s/org.hibernate.search.spi.MassIndexerFactory/org.hibernate.search.batchindexing.spi.MassIndexerFactory/g
Additional API changes of Hibernate Search5
Introduce custom Externalizers in the Query module: BooleanQuery serialization support
Add Externalizer for TermQuery
Introduce Externalizer for Lucene Term
Introduce Externalizer for Lucene Sort and SortField
Include ClusteredTopDocs and TopDocs Externalizer
Externalizer for ScoreDoc
Add Externalizer for TopFieldDocs
Include an Externalizer integration test focusing on Lucene Term
Improve code for ClusteredQueryTest
Review PriorityQueue handling