MODE-1397 Implemented Observation support, together with a standard event bus
MODE-1397 Updated and fixed some code for the Node.orderBefore operation
MODE-1397 Updated event bus to use 1 thread/event que/workspace/listener

- ported JcrObservationManagerTest from 2.x, but disabled some of the failing tests
- made ExecutionContext mutable in SessionCache, so that extra data (i.e. observation "userData" can be passed down)
MODE-1397 Added unit test for RepositoryChangeBus
MODE-1397 Added ValueMetric#EVENT_QUEUE_SIZE metric support
MODE-1319a: Added Sequencers
MODE-1319: Cleaning up code in service classes
MODE-1417 Corrected versioning of files uploaded through REST client

The REST client library was versioning only the 'jcr:content' child node of an
'nt:file' node. While that's acceptable (since it's where the file's content is
actually stored), it's better if the 'nt:file' node itself was versioned.

This change simply changes the node where the 'mix:versionable' mixin is applied.
When a new 'nt:file' node is uploaded, that node is now made versionable instead
of the 'jcr:content' child. All existing content is still handled and versioned
correctly (as it was), and this change only affects content added using a
RESTful client that contains the fix.

This change only affects the RESTful client, which is never used within the
server-side installation of ModeShape.

All unit and integration tests pass with these changes.
MODE-1397 Added JGroups based implementation for the ChangesBus
MODE-1397 Made JChannel configurable via the repository configuration
MODE-1365 Added more support for queries

Lots of changes in the portions of the ModeShape code that's using Lucene, including the
general interfaces and reusable queries (in org.modeshape.jcr.query.lucene) and the basic
schema that uses a single index (in org.modeshape.jcr.query.lucene.basic).

At this point, all query functionality appears to work except for full-text search.

All current tests pass with these changes, though more testing is required.
MODE-1420 Fixed unwanted Hibernate Search warning messages

Hibernate Search's SearchConfiguration class defines a "isTransactionManagerExpected()"
method that dictates whether the warning messages should be logged (and that appears
to be the only way in which this method is used).

So far, ModeShape's org.modeshape.jcr.query.lucene.LuceneSearchConfiguration implementation
has returned 'true'. But this method should return 'false', since the re-indexing operations
are not performed within a transaction, so Hibernate Search shouldn't always expect a
transaction. Simply making this change makes the problematic log messages disappear, but
doesn't otherwise affect any functionality.

All unit and integration tests pass with these changes.
MODE-1418 Corrected certain queries with full-text search criteria

Certain JCR-SQL2 full-text search criteria were not being processed correctly.
Any f.t.s. criteria that specified a single property resulted in an incorrect
query plan.

Several changes were made to correct this behavior, and new unit tests were added.
MODE-1423 SchematicEntryLiteral annotated with Externalizer class

The Externalizer for the SchematicEntryLiteral class is an AdvancedExternalizer, but
this requires proper configuration (in Infinispan XML or programmatic config) for it to
work. This change adds the '@SerializedWith(...)' annotation to the SchematicEntryLiteral
class to specify the Externalizer implementation, which means the annotation-based
ClassExternalizerFactory should find it.
MODE-1428 Upgraded RESTEasy

RESTEasy was upgraded to the same version used within JBoss AS 7.1.1.Final. An additional
dependency on 'jboss-common-core' was needed for tests in the 'modeshape-jcr' module, since
it is no longer exposed by RESTEasy.
MODE-1379 MODE-1426 1427 Upgraded Infinispan, JGroups and PicketBox

The dependency on Infinispan was upgraded to 5.1.2.FINAL, which is the same version used by
JBoss AS 7.1.1.Final. The JGroups version was also changed to match that used by Infinispan
5.1.2.FINAL (and JBoss AS 7.1.1.Final). Also, the PicketBox version was upgraded to the
same version used in JBoss AS 7.1.1.Final.

The Infinispan upgrade required some changes to how the DeltaAware-related code works, since
that framework was changed between 5.1.0.BETA3 and 5.1.0.FINAL (though this was unchanged
since then).

All current unit and integration tests pass.
MODE-1425 Upgraded JodaTime to 1.6.2

JBoss AS 7.1.1.Final uses JodaTime 1.6.2, so this library was upgraded to match this
(from 1.6).