Add Infinispan StoreFeatures cluster mode comment
Dump heap on OOM in default maven test config
ExpectedValueCheckingStore tx handling tweaks

Failing to commit/close/flush lock store transactions doesn't matter
for backends that actually use ExpectedValueCheckingStore, but it
leads to transaction leakage under pathological configurations of
other stores (like Infinispan configured to use
ExpectedValueCheckingStore instead of Infinispan's own native locking
mechanism)
Initial commit of Infinispan transaction support

This introduces Infinispan transaction support backed by the JBoss
Transaction Manager, also known as Narayana and the core module of
which is known as Arjuna.  The implementation uses javax.transaction
where possible, which should theoretically ease a potential switch to
an alternative JTA/JTS transaction provider (say, Atomikos).

This commit also changes the Infinispan store configuration from
non-transactional to transactional for all tests.  I'll add the
nontransactional configuration back in as a separate test execution in
a future commit, so that each test for Infinispan is executed in both
a transactional and nontransactional configuration.

I also removed the Infinispan LockKeyColumnValueStoreTest, since its
semantics make no sense for a store that has builtin key-level locking
that doesn't implement acquireLock.  It may make sense to re-add it
with a nontransactional config.

This code is new, just barely tested, and should be assumed buggy.
Infinispan: unused variable and import cleanup
Infinispan configuration option changes

* added new options to configure Infinispan locking mode
  (optimistic/pessimistic) and the timeout for lock acquisition RPCs

* renamed existing config property strings to form at least a faint
  resemblance of a pattern
Infinispan: added SFS persistence config options

This commit adds support for Infinispan's SingleFileStoreCache
persistence mechanism.  I've only tested it in a local,
non-distributed configuration with sample data, but it seems to work
as intended there.  I have not scrutinized the async and preload
options to see whether they actually function as documented, but the
configuration code involved is pretty trivial compared to the
transactional stuff.

This commit also wires the StaticBufferAE AdvancedExternalizer
implementation into Infinispan's GlobalConfiguration by default.  I
tested this a few days back on EC2 when doing replicated cluster
testing, and I'm reasonably certain it does the right thing under
favorable network conditions and the absence of node failure, but it's
not tested beyond that point.  I had to wire in the externalizer to
get persistence running.
Refactor Infinispan persistence configuration

Configuration of SingleFileCacheStore in Infinispan now uses the
storage.directory configuration key.  This key is now optional.  If
not present, then persistence is disable.  If present, then a
SingleFileCacheStore is created on the specified directory path.
Infinispan then reads/writes one file per named cache inside the
specified directory.

I've tested this in bin/gremlin.sh by loadind and persisting trivial
example data, but that's it.
Run ISPN tests with, without transactions enabled

I moved the test logic into abstract base classes, each of which has
two concrete subclasses: one that enables transactions and one that
disables transactions in the store configuration.
Infinispan test import cleanup

Entire titan-infinispan module shows up as warning-free in Eclipse at
this particular commit on my machine.
Tweaking Infinispan tests and Narayana dependency

* Brought back the LockKeyColumnValueStoreTest for Infinispan with
  native transactions disabled

* Changed
  InfinispanCacheStoreManager#getFeatures().supportsTransactions from
  hardcoded true to the value of the storage.transactional config key

* Made a Narayana non-optional dependency for now, though it's
  debatable whether it should be optional or not

* Moved dependencyManagement stanza for jboss-logging up to the
  top-level pom so that building the infinispan distributions won't
  choke on maven-enforcer-plugin's dependencyConvergence rule