MODE-1536 Corrected one use of System.nanoTime

Previously, most of the uses of System.nanoTime to determine the duration of an operation were changed to compute the absolute value of the difference in nanoTime results. One usage was missed, and this corrects that omission.
Updated Maven module descriptions
MODE-1527- Migrated initial version of the text extractors from 2.x and updated the binary store to extract the text and mime-type of binary values

Working on this, exposed how fragile - lock-wise - is working with the SharedLockingInputStream (FileSystemBinaryStore). Therefore, I've updated the mime-type detection so that mark & reset are avoided as much as possible, also making sure that streams are closed after each detector finishes with them.
The Tika version was bumped to 1.1 which required also the update of the POI version to 3.8.
MODE-1527 - Updated the text extraction process to be asynchronous with the indexing process.

 This meant that a few changes were needed:
 - the text extractors configuration has been updated to resemble that of the sequencers
 - the binary store interface has been updated to be able to store and retrieve extracted text for a given binary (source) value
 - the TextExtractors class was changed to become the entry point into text extraction
MODE-1527 - Updated the text extraction process to be triggered preemptively by the binary storage, when a binary value is created.

For this to be possible, the context of the extractor cannot contain any node-specific information. Also, this exposed an issue with the SharedLockingInputStream: if the stream is closed in the "read" methods, Tika's parsers will keep reading it over and over (effectively reopening it each time) either causing OOM errors or duplicate text. This means the "close" call from the read methods has been removed.
MODE-1527 -Added AS7 support for configuring and working with text extractors. To validate the configuration and Arquillian integration test was added as well.
MODE-1544 - Extracted Tika based mime-type detector and updated the way mime type detectors are loaded and initialized.

Because of the AS7 support, the detectors need to be loaded via the Environment class loader. Also, because text extraction (and implicitly mime-type detection) can be triggered preemptively, some of Tika's excluded dependencies needed to be added back (e.g. for .java and .class files)
MODE-1544 - Removed the mime-type detector field from the execution context, as the binary storage & binary values should be the "owners" of the mime-type related information.
MODE-1545 - Implemented a mechanism for the binary store to persist the mime-types of binary values, in order to avoid detection each time.

While working on this, another issue was exposed and fixed: when persisting data to disk (e.g. the AS7 kit), the defaultPrimaryType of node type definitions was not properly re-initialized on a restart.
MODE-1433 - Added a JDBC datasource to the AS7 kit and an integration test which verifies that the DS is correctly setup and can correctly access the repository.
MODE-1416 - Updated the rest server to produce not only application/json but also text/plain and text/html, based on the Accept header of the request.
Clients which rely on the old (default application/json behavior) should specify the Accept header in the request.
MODE-1458 Implemented Shareable Nodes

The JCR shareable nodes feature was implemented using the linked nodes capability of
the internal Repository Cache framework. All basic functionality is implemented
and all TCK tests pass with the exception of several tests that have bugs/issues
(see https://issues.apache.org/jira/browse/JCR-3370, https://issues.apache.org/jira/browse/JCR-3371
and https://issues.apache.org/jira/browse/JCR-3380). Two other shareable node
tests are currently failing because of how Node.save() is implemented
(see https://issues.jboss.org/browse/MODE-1552). Note that Node.save() is deprecated,
and a workaround is to simply use Session.save() instead.
MODE-1545 Corrected the JavaDoc for the AbstractBinaryStore
MODE-1448: Initial implementation
MODE-1448: Configure JDBC binary store
MODE-1448: Initial implementation
MODE-1549 JCR-SQL2 uses '<>' rather than '!=' as not-equal-to operator

ModeShape abstract syntax tree used '!=' as the "not-equal-to" operator, but did
alias '<>' to '!='. This change reverses this so that the '<>' token is considered
the primary operator, and '!=' is aliased.
MODE-1556 Corrected the handling of != (or <>) query criteria on numeric fields

Numeric values were not being handled consistently in the indexes and in queries. For example,
some values were being treated as integer values in the indexes and queried as longs (which
doesn't work). Additionally, some of the logic of handling and combining "not" queries was
incorrect.

All unit and integration tests pass with these changes.
Fixed javadoc errors that occurred when moving from Eclipse Helios to Eclipse Indigo. Also fixed a pom error that occurred when upgrading Eclipse.
Added comment to pom that references the online thread where I got the pom code to solve the build issue.