HBASE-12668 Adapt PayloadCarryingRpcController so it can also be used in an async way

Signed-off-by: stack <stack@apache.org>

Conflicts:
	hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/TimeLimitedRpcController.java
HBASE-12678 HBCK should print command line arguments
HBASE-12681 truncate_preserve command fails with undefined method 'getTable' error (Ashish)
HBASE-12644 Visibility Labels: issue with storing super users in labels table (Jerry He)
HBASE-12659 Replace the method calls to grant and revoke in shell scripts with AccessControlClient (Srikanth Srungarapu)
HBASE-12679 Add HBaseInterfaceAudience.TOOLS and move some of the Public classes to LimitedPrivate
HBASE-12422 Use ConnectionFactory in HTable constructors Fix method signature in test

Conflicts:
	hbase-client/src/main/java/org/apache/hadoop/hbase/client/coprocessor/SecureBulkLoadClient.java
	hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
	hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFilesSplitRecovery.java
	hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java
HBASE-12689 Move version on from 0.99.2 to HBASE-1.0.0-SNAPSHOT
HBASE-12680 Move signal related code from ClusterManager to HBaseClusterManager and change ClusterManager to an interface

Summary: The reason of this change is to make us write implementation of ClusterManager not using ssh/unix signals.

Test Plan: The compilation is OK.

Reviewers: eclark, manukranthk

Differential Revision: https://reviews.facebook.net/D30201

Signed-off-by: Elliott Clark <eclark@apache.org>
HBASE-12683 Compilation with hadoop-2.7.0-SNAPSHOT is broken
HBASE-12692 NPE from SnapshotManager#stop (Ashish Singhi)
HBASE-12675 Use interface methods in shell scripts (solomon duskis)
HBASE-12685 TestSplitLogManager#testLogFilesAreArchived sometimes times out due to race condition
HBASE-12651 Backport HBASE-12559 'Provide LoadBalancer with online configuration capability' to branch-1