Experimental Cassandra 2.0 support

This commit does not preserve backwards compatibility with Cassandra
1.2.  It's a quick feasibility test for 2.0 client-side support.

* Invasive source changes are required in the embedded adapter, in
  particular with explicit timestamp handling, but the embedded tests
  pass

* Thrift adapter required only one small change: a public static
  String field storing the name of the system keyspace in a Cassandra
  internals class has moved

* Astyanax adapter is broken with no apparent upgrade path.  Astyanax
  does not yet support Cassandra 2.0 on the client side, except
  perhaps in the unreleased beta Java driver branch.  Linkage errors
  at runtime when running against 2.0

* The Guava version is delicate.  Going to 16.0 or newer breaks
  Cassandra 2.0.x, which was compiled against Guava 13.x.  16.0
  changed the return type of
  com.google.common.util.concurrent.RateLimiter.acquire(int) from void
  to double, and that causes linkage errors with Cassandra at runtime.
Using one authoritative source of time throughout the code: Timestamps.SYSTEM(). Refactored a lot of classes to use it. Throughout titan core, the assumption is that all times are in system time - hence passing around time units is no longer necessary. Also, sleeping and timed waiting should be done with the methods on TimeProvider.

DOES NOT YET COMPILE.
Rewrite Timestamp refactoring

Ran `git revert --no-commit af5de8a747d174642d582af19e8a8f8b50757dc3`
and made substantial edits before committing, including retaining some
changes that would have been reverted and rewriting some others.  This
compiles and most tests pass (HBase has problems, there seem to be
problems related to CString introduced in the last commit, I think a
recent BDB bugfix on titan05 is missing, maybe other failures).

This reverts commit af5de8a747d174642d582af19e8a8f8b50757dc3.
Fixes #565
Merge branch 'titan05' into fixtimestamps

Conflicts:
	titan-test/src/main/java/com/thinkaurelius/titan/diskstorage/log/LogTest.java
Timestamp refactoring

Introducing Timepoint and Duration to core
Add Log4j console appender config in BDB

Console output is still disabled by default; this change only makes it
easier to reenable when desired during debugging
Disable log4j console output in Cassandra tests
Deleting dead code/classes from timestamp work

When committing b8dba5ec117e611e1aa524a73847b2755464ef14, I
intentionally kept a a few unused classes and some commented code in
case it proves useful in the future.  Deleting those now that they are
in the history.
Renaming time-related public config constants

Several formerly long-denominated time configuration options had their
units embedded in the variable name, such as CONNECTION_TIMEOUT_MS.
Embedding the units in the name might be appropriate for the
configuration string key associated with the variable, but it is no
longer meaningful for the constant names in the Java source code,
since those config options are now of type Duration/Timepoint.
Merge branch 'titan05' of https://github.com/thinkaurelius/titan into titan05
Merge branch 'fixtimestamps' into titan05
Increasing log test timeouts again
Put HBaseOLAPTest in the right package dir
Rewrote gremlin.sh shell script

Added a -l <LEVEL> option that sets the severity thresholf of log4j,
preserved existing -e and -v options for ScriptExecutor and printing
the Gremlin version, respectively
Additional logging in HBase region discovery
debug-log randomly selected ID partitions
Merge branch 'titan05' into experimental-cassandra-2.0

* Resolved conflicts around the migration from time variables of type
  long to time variables of type Timepoint or Duration

* Deleted the Astyanax adapter, since the current release of Astyanax
  is incompatible with Cassandra 2.0's Thrift version and the
  2.0-compatible javadriver-based rewrite of Astyanax is in beta

Conflicts:
	titan-cassandra/src/main/java/com/thinkaurelius/titan/diskstorage/cassandra/embedded/CassandraEmbeddedStoreManager.java
Tweak a multithreaded LogTest method

Avoiding overlapping writes to a nonvolatile variable reference
Refactored id handling by making system types a separate id space and distinguishing from user types.