MB-8444: enable adjusting concurrent replicators at run-time

This commit will enable dynamicly setting number of concurrent
vb replicators at runtime, without stopping/restarting ongoing
replication. Active replicators will check during the ongoing
replication if user has changed number of tokens or not, and
adjust concurrency throttle accordingly.

If user increases tokens during XDCR, these new tokens will be
immediately available and the throttle will schedule corresponding
waiting replicators to be active. However, if user decreases the
number of tokens, the concurrency throttle will allow active vb
replicator to continue, until it is done and return the token to
throttle. The throttle will not schedule new vb replicators before
enough tokens have been returned.

Users can change number of tokens by ns_config parameter:

xdcr_max_concurrent_reps

or via env parameter

MAX_CONCURRENT_REPS_PER_DOC

Change-Id: Ie267c9fee7afa4e87414ee0e696e235c523e2e3b
Reviewed-on: http://review.couchbase.org/27089
Tested-by: Junyi Xie <junyi.couchbase@gmail.com>
Reviewed-by: Jin Lim <jin@couchbase.com>