MODE-1943 Implemented peer-to-peer indexing, based on processing of remote internal events. This mechanism will be triggered whenever a repository is clustered and indexing is not configured in clustered mode.
MODE-1913 Removed the CMIS webapp from the EAP xml configuration file. The web application will still be packaged & distributed, but will not start together with the subsystem.
MODE-1949 Fixed property & child node validation when removing mixins.
Corrected compiler warnings and JavaDoc errors.
Merge branch 'MODE-1949' of git://github.com/hchiorean/modeshape into hchiorean-MODE-1949
MODE-1901 Added support for obtaining the query plan without executing the query

There is a new 'explain' method in the ModeShape public query API that returns the internal
query plan for a given statement and language. This same functionality
is also exposed in the JDBC driver (as a custom method) and the RESTful
API (v2).
MODE-1950 - Updated the REST service so that mixins are removed only after properties & children have been processed. Also, implemented a type conversion mechanism so that JSON primitive types are correctly converted to JCR Values, as opposed to always being strings.
MODE-1948 Fix resource adapter shutdown procedure.

The resource adapter used to make 2 instance and close one which wasn't used
anyway. The code has only one engine now, and it is shut down when the resource
adapter's stop() method is called.

Make sure to wait until the shutdown is complete. Since the RA's stop() method
can be called from a shutdown hook, new background threads will be forcibly
halted before their work completes. When the shutdown takes more than 30 seconds,
log the time out exception.

This commit also adds some extra debug logging to know when the shutdown method
gets called.
MODE-1948 Changed logging to be more consistent with ModeShape patterns
MODE-1948 Fix / clean up I18n.

Make error I18n texts better fit the code they're supposed to log about,
clean up unused messages copied from elsewhere.

Add dependency on common tests classes to get I18n sanity test working.
MODE-1948 Initialize engine when requested by connection classes.
MODE-1946 Corrected WebDAV behavior when putting file with OS X

The OS X Finder application is used on OS X to mount a WebDAV service (e.g.,
a repository) as a networked drive. However, the behavior of Finder
is verbose in that it sends multiple PUT operations when copying a
single file into the WebDAV area. The first PUT has no content,
and is followed by a LOCK, a second PUT (with the content), and
and UNLOCK. ModeShape's WebDAV service was not expecting this pattern
and was not writing the second content.

The fix was relatively gross, since it entails OS-specific checks.
But it does work, and all tests do pass.
MODE-1651 JCR-specific exceptions are now translated into WebDAV exceptions

The corresponding WebDAV exceptions have the appropriate response status.
MODE-1919 Updated the IRestClient interface with 2 methods which allow to mark & unmark a folder as a publish area.
MODE-1919 Updated the ModeShape EAP kit, so that the "artifacts" repository contains a publish area named "files", below the root of the default workspace.
MODE-1951 Fixed the inclusion filter for the file system connector.
MODE-1902 Added a FAIL_IF_MISSING option to the re-indexing options, so that a repository will fail to start up if there are no indexes and this option is enabled.
MODE-1954 Corrected code that removes property definition during registration

The code that removes existing property definitions when storing a
node type template did not properly remove the node under
'/jcr:system/jcr:nodeTypes' that represented the property definition.
Instead, it merely removed it from its parent, but left the node
(which could not be found in its parent when later processed).
There was a bold node in the JavaDoc for the method stating this
behavior, so it was merely a method call that was not corrected a while
back.

The test case failed with the same exception, and now succeeds
with the aforementioned fix.
MODE-1908 Refactored AbstractBinaryStore and the BinaryStore interface so
that the latter is used
MODE-1908 Added 'store name' as a property of all binary stores. Also, added a CompositeBinaryStore that:
- initializes any number of named BinaryStore instances
- appears as a vanilla BinaryStore to existing code
- allows consumers to offer a "StrategyHint" that may be used to determine what named BinaryStore to persist content to
- on retrieval, looks for the BinaryKey in all named BinaryStores