MB-9343 takeover command implementation

To initiate a VBucket Takeover the rebalancer sends an “Add Stream”
command to the consumer with the Takeover flag set.

This message contains the vbucket that should be taken over and will
return immediately to indicate either success or failure.
The VBucket stream should be closed in order for the takeover
message to succeed.

After the takover is finished the producer will send
"Set VBucket State" message to the consumer to set the
vbucket to active state. The rebalancer should wait for the
ack to this message from the consumer which will indicate the
end of the takeover process.

Change-Id: I5c394cf3db9077279e79dc4845b7ad3637aa23b9
Reviewed-on: http://review.couchbase.org/33276
Tested-by: Artem Stemkovski <artem@couchbase.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
MB-9343 close streams simultaniously on

.. consumer and producer side. this guarantees that
the subsequent add_stream will not fail with keyexist

Change-Id: I3023207596861eb0f414c7283caec2b3db0e7056
Reviewed-on: http://review.couchbase.org/33427
Tested-by: Artem Stemkovski <artem@couchbase.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>