SES-1842 Custom graph query inferencer Sail, including Console and Workbench integration

* Only a template for the inferencer wrapping a MemoryStore is provided. A NativeStore
  template (and Workbench integration for same) will be provided in a followup commit.
* Includes inferencing tests that run from store-compliance for the case of an underlying
  MemoryStore.
SES-1842 Inferencing tests now work, and connection tests added.

* Also added tests for the case of an underlying NativeRDF store.
SES-1872 QueryJoinOptimizer now uses helper method to detect (nested)
projections in order to determine if a tuple expression contains a
subselect. containsProjection is now a reusable utility method in the
TupleExprs class.
SES-1867 added provided consistency test as integration test
(reimplemented using Junit)
SES-1867 added provided fix. This greenlines the test provided earlier.
Merge branch '2.7.x' into SES-1842-2ndTry
Merged in dvisser/sesame/SES-1842-2ndTry (pull request #154)

SES-1842 Custom graph query inferencer Sail, including Console and Workbench integration
SES-1877 Two predicates from the SP vocabulary are now obtained from the new SP vocabulary class.
Merged in dvisser/sesame/SES-1877 (pull request #163)

SES-1877 Two predicates from the SP vocabulary are now obtained from the new SP vocabulary class.
Merged in ses-1867 (pull request #161)

SES-1867 patch in BTree for observed index inconsistency
Merged in ses-1872 (pull request #160)

SES-1872 QueryJoinOptimizer now uses helper method to detect (nested) Projections
SES-1867 minimized patch code to just push the stack once - further
checking if the child is a leaf node or resetting the currentIdx seems
to be unnecessary. Assertion problem caused by imbalance in usage
counters, fixed by adding currentNode.use() to pushStacks()
implementation. Test now greenlines with assertions enabled.
set to 2.7.3
[maven-release-plugin] prepare release 2.7.3
[maven-release-plugin] prepare for next development iteration