Initial refactoring of diskstorage package
Finished initial refactoring for Pavel to review. DOES NOT BUILD
removed getKeys(StoreTransaction), fixed getSlice for ordered stores and tests
add insert method to CacheStore
add Titan EhCache implementation
add Titan Hazelcast implementation
add EhCache/Hazelcast modules to main pom and all package
delete titan-ehcache module
remove redundant CacheStore.insert method
skeletion of Hazelcast KCV/Cache stores
add Hazelcast CacheStore implementation and tests
add KeyColumnValueTest for HazelcastKeyColumnValueStore (+ performance improvements)
add hash prefixed test for HazelcastKeyColumnValueStore
add Hazecalcast TitanGraph{Performance}Test implementations
fix HazelcastKCVManager to respect "transactional" flag + warning about nested transactions
Rewriting Titan distro scripts

Replaced titan.sh with a script that starts or stops Cassandra
followed by Rexster with a Titan+Cassandra graph configuration.  Added
Cassandra and Rexster config files and logging config files that write
within the distro's extracted directory.  The new titan.sh can also
delete these data when invoked with the "clear" argument.

This commit is a work-in-progress and should not be packaged or
shipped.  This commit leaves the HBase and BDB distros in a broken
state.  A simplified titan.sh and set of rexster.xml config files is
needed for HBase and BDB.
Customizing imports in zip/tarball Rexster cfg

This shows that we can mirror the customized imports in Titan's
Console.java file in Rexster without modifying Rexster's source or
resorting to an extension.  However, this commit introduces
copy-pasted duplication between Console.java and rexster.xml.  I think
I see a better way to do this now.  The logic in Console.java that
executes groovy import statements should be extracted into a static
method or a method on some new throwaway object.  It will return
groovy code.  A new main method should be introduced to call this
helper method and write the code to a file.  Rexster can then be
configured to execute it via the <init-scripts> configuration option
in the <script-engine> stanza for Gremlin.  It might even be possible
to build this into the titan-dist maven lifecycle, so that it's fully
automated.
Added JUnitBenchmarks output to .gitignore
Centralize src/main/resources in titan-core

Redundant, identical copies of titan.properties and log4j.properties
in multiple modules is a maintenance hazard.  There's no reason to
have multiple copies.  Now it's in titan-core.
Extracted Gremlin imports into utility class

Console.java now relies on a new class, ConsoleSetup.java, to supply a
list of imports/import-statics to execute when bootstrapping a Gremlin
shell for Titan.  The utility class also contains a main method that
writes the imports to stdout or a file.  This is useful for generating
a Rexster <init-script> file for use with Titan that imports all the
same symbols as an interactive gremlin.sh session.  It also avoids
copy-pasting, so that any time we update the import list effective in
gremlin.sh, we will also automatically update the Rexster environment.