ACCUMULO-2694 Fix handling of tablet migrations for offline tables.

* Adds a funtional test that fails due to not rebalancing
* Fix master to clear migrations when it learns that a table has gone offline
* Update master to periodically clean up migrations for offline tables
* Fix balancers to make sure they log if they can't balance.
Merge branch '1.5.2-SNAPSHOT' into 1.6.1-SNAPSHOT

Conflicts:
	server/base/src/main/java/org/apache/accumulo/server/master/balancer/ChaoticLoadBalancer.java
	server/base/src/main/java/org/apache/accumulo/server/master/balancer/TabletBalancer.java
	server/src/main/java/org/apache/accumulo/server/master/Master.java
	server/tserver/pom.xml
	test/system/auto/stress/migrations.py
ACCUMULO-2694 update migration cleanup for 1.6 branch.

- manually redo changes to Master
- convert python functional test to an IT
-- Add programmatic access to MasterMonitorInfo to MiniAccumuloClusterImpl
-- Make SystemCredentials work with MiniAccumuloClusterImpl
Merge branch '1.6.1-SNAPSHOT'

Conflicts:
	server/base/src/main/java/org/apache/accumulo/server/master/balancer/ChaoticLoadBalancer.java
ACCUMULO-2694 fix dependency in test module for master branch.

the test module code for replication made use of commons-lang without
declaring the dependency, relying on a transitive inclusion from
commons-configuration.

since the test for balancing in the face of an offline table added
commons-lang at test scope, the transitive inclusion was lost and
compilation fails.