LILY-364 RecordUpdateHook: extend with beforeCreate and beforeDelete hooks and provide the hooks with RecordEvent (the WAL&MQ payload) to which they can add stuff.
LILY-364 RowLog: allow to put a message on the queue for a subset of subscriptions.
LILY-364 Extend RecordEvent with information needed for selective MQ feeding + add RecordEventTest.
LILY-364 RowLog.putMessage method which takes subscription as argument: this should have been part of 2ef00e0424e41ffcddcd9cd41985b16726582b3c
LILY-364 Introducing smart population of the MQ so that each indexer only receives events about relevant records.

This makes it more efficient to have multiple indexes, especially when each index handles a different subset of the records.

To do this more selective MQ feeding, MessageQueueFeeder is replaced by a new IndexAwareMessageQueueFeeder.

In case the information based on which a record is included in some index changes, the old index(es) of which the record was part still need to receive the event in order to delete the record from their index. Thus, IndexAwareMessageQueueFeeder needs both the old&new values of this information, and this is made available in the RecordEvent by the IndexSelectionRecordUpdateHook, which plugs in in the critical path of the CRUD operations.

There is a new Kauri module called indexer-integration which registers the IndexAwareMessageQueueFeeder and IndexSelectionRecordUpdateHook (which needs to be done before the Repository starts).

In the indexerconf, the simple List<IndexCase> is replaced by IndexRecordFilter. The indexerconf.xml <records> section syntax changed (it is now replaced by a <recordFilter>), but the old syntax stays supported.

All this is still work in progress: the major components are in place and there is a basic testcase, but lots of things left to do.
LILY-364 Fix broken commit method.
LILY-364 always delete records from index when there is no matching index case.

There might previously have been one, IndexAwareMQFeeder only provides an event if this is the case.
LILY-364 Allow filtering on field values in the <recordFilters>.

All non-complex types are supported. Only simple equals tests.
Note that record type filter should now follow the normal qname syntax for the indexerconf: "ns:name" instead of "{ns}name".
Did some refactoring of the SmartIndexMQFeedingTest.
LILY-364 Removed easymock dep by error, restoring.
LILY-364 Add a testcase for RecordMatcher (only tests a few things right now), fix wildcard patterns for RecordMatcher.
LILY-360 Support <match> elements in indexerconf.
LILY-360 Fix tests: make sure fields used in dynamic fields can trigger index updates
LILY-360 Fixing IndexerTest
LILY-360 Removed code duplication, remove cruft
LILY-360 Fix the 'field' check of <match> elements (note: doesn't work until merged with other work)
fix imports
LILY-360 Avoid code duplication, fix what's broken
LILY-505: first draft of an API for the "deref map"
LILY-505: working initial implementation of the DerefMap. More related work, optimizations (custom hbase filter?), integration (how to instantiate, manage, ...), testing etc remains to be done though. Also, this version doesn't have a solution for the "more dimensioned variant dereferencing" problem yet.
LILY-505: implementation of the deref-map with support for more dimensioned variant "pattern" matching.