QI-318 rdf/EntityStateSerializer now use Serialization SPI
QI-318 indexing-rdf & serialization format service tags
QI-318 entitystore-neo4j
QI-318 entitystore-preferences
QI-318 rest-server and rest-client libraries
QI-318 eventsourcing
QI-318 indexing-elasticsearch
QI-318 spi/JSONEntityState

This is a big commit as every EntityStore including MemoryEntityStore is
impacted. I changed all unit tests that assemble a MemoryEntityStore to
use the EntityTestAssembler instead. BTW this is more future proof.

Neo4j EntityStore (de)serialization of BigIntegers and BigDecimal fixed.

Added a way to provide a Function as ValueDeserializer service MetaInfo
to configure at assembly time which module of the application is used by
the ValueDeserializer service. This is needed for EntityStores to reuse
it while handling Entities and Values assembled in "upper" layers. The
default serialization support, ValueInstance#toString() and
ModuleInstance#newValueFromSerializedState(), respectively use the
ValueInstance's Module and the Module the method is called on.

An example of the "Values Module Function as MetaInfo of
ValueDeserializer" mechanism can be found in the DCI-Cargo sample. Look
for Assembler.java and TestAssembler.java.

Added javadoc in ValueSerialization SPI aimed at extensions writers and
in API aimed at application developpers.