Handoff manager EQC testing

Starting with code written by @jrwest long ago, @aberghage and I have created a more comprehensive test suite using `eqc_statem` for `riak_core_handoff_manager`.

Tests include:

* Add outbound and inbound transfers
* Disable future transfers using `riak_core` environment variables
* Control concurrency level using `set_concurrency`
* Retrieve concurrency level using `get_concurrency`

Near-term plans for extending this:

* Test transfer lifecycle (errors at start or during transfer) as part of Alex's improvements to error status management #630 
* Test the more sophisticated enabling/disabling transfers as part of Alex's branch `feature/atb/handoff-enable-disable`
* Test resize transfers

All the places where the following is used, should probably be replaced with a function. I also think we should be specific and only check for  `=:= MaxConcurrency`. If we are trying to model never adding more than that in the `next_state` functions we should fail here if we do have more than max concurrency.

length(valid_handoffs(Handoffs)) >= MaxConcurrency