ACCUMULO-3385 Fix broken DateLexicoder ordering

  Corrects the ordering so that dates before 1970 actually sort before dates
  after it. This changes the internal serialization, so please see the release
  notes for a workaround if you have data written with the buggy form.
Merge branch '1.6'

Conflicts:
	core/src/test/java/org/apache/accumulo/core/client/lexicoder/ReverseLexicoderTest.java
ACCUMULO-1798 Remove unused import
ACCUMULO-1817 Introduce usage of Hadoop Metrics2 by default for JMX and other metrics sinks (graphite and ganglia)

Preserves "old" custom JMX MBean registration via Property.general.legacy.metrics, otherwise, Metrics2
classes are used. Example hadoop-metrics2-accumulo.properties configuration file is provided, which
enables nothing but serves as a default for users to enable file collection, graphite, or ganglia.

Cleaned up a bit of ill-formatted code, consolidated utility methods and constants across both implementations,
and introduced factory methods to create each type of metric collection class we provide.
ACCUMULO-3387 Update user manual to describe metric reporting capabilities
ACCUMULO-3177 Create a per table volume chooser

Signed-off-by: Christopher Tubbs <ctubbsii@apache.org>
ACCUMULO-3178 Create example preferred volumes chooser

Signed-off-by: Christopher Tubbs <ctubbsii@apache.org>
ACCUMULO-3388 Ensure that DefaultMetricsSystem is only initialized once.

Use the initialization-on-demand holder idiom to make sure that we
only have one instance of the MetricsSystem per process.
ACCUMULO-3306 Simplify PortUtils.getRandomFreePort

Remove the computation of a "random" port number
and just use the OS provided feature of asking
to bind the socket on '0'. Fixed a bug where
the count variable was not incremented.
ACCUMULO-3308 Expand docs on configuration of IMM.

Expand on how the minc threshold, IMM size and WAL size
must be altered together. Additionally, mention how
the HDFS block size for the WAL should be increased to 2GB
when the WAL size is increased over 2GB.
Merge branch '1.6'

Conflicts:
	docs/src/main/latex/accumulo_user_manual/chapters/administration.tex
ACCUMULO-3308 Clarify WAL block size recommendation.
Merge branch '1.6'

Conflicts:
	docs/src/main/latex/accumulo_user_manual/chapters/administration.tex
ACCUMULO-3392 Remove incorrect javadoc on MiniAccumuloCluster.start()

Also fixed the impl's javadoc.
Merge branch '1.6'
ACCUMULO-3269 Set REUSEADDR on the Socket.

Setting SO_REUSEADDR on the Socket used to ask
ZooKeeper if "it's ok" appears to help mitigate
the spurious issue when ZooKeeper would fail to
bind to an otherwise free port.
ACCUMULO-3381 add accumulo-trace back into assembly
Merge branch '1.6'
ACCUMULO-3306 Remove unused import
ACCUMULO-3269 Add a brief sleep before retrying ruok