Groundwork for configuring timestamp resolution

Turn TimestampUtility into a general interface with a
nanosecond-resolutiond and microsecond-resolution implementation.
This change removes a few points where TimeUnit.NANOSECONDS or a
something-to-nanoseconds conversion divisor was hardcoded.  The
titan-test and titan-cassandra suites pass.  The other test suites may
be broken.  Also, I'm not sure these changes are complete -- I have
yet to turn on microsecond timestamps and see what breaks.

This relates to #472 and #483 but does not close either.
Preload ConfigOptions at most once

This prevents redundant, costly reflections traversals of the
classpath from slowing down TitanFactory.open(...) calls that follow
the first one after VM start.
Add a logging statement in TimestampProvider
Timestamp-related refactoring in core

* Combined NanoTime and MicroTime classes into a single enum called
  Timestamps.  The TimestampProvider interface is unchanged.

* Added a TIMESTAMP_PROVIDER ConfigOption to
  GraphDatabaseConfiguration and made StandardTransactionBuilder apply
  its value.  The default is micros.

* Made ConsistentKeyIDManager use millisecond timestamps in its mutate
  calls.  Before this commit, it seemed to write columns containing
  millisecond time but issue those writes to Cassandra/HBase using
  nanotime at the protocol level.  Now it should be milliseconds
  throughout.

* Made ConsistentKeyIDManager instantiate a new storage transaction
  configuration for each mutate call.

* Cleaned up a couple cases of commented code held over from previous
  refactoring commits.
Cleanup in config option preloader

Deleted commented code and reduced the loglevel on an innocuous debug
message needlessly marked as error.
Commented code deletion
Make ConsistentKeyLocker use timestamp config

CKL's builder now checks the TIMESTAMP_PROVIDER ConfigOption defined
in GraphDatabaseConfiguration instead of just defaulting to nanotime
Make hardcoded nanotime use configurable in CKL

Found a bunch of hardcoded references to TimeUnit.NANOSECONDS as soon
as I tried microsecond time in ConsistentKeyLocker; this commit passes
the test suite