[autotest] Send labels to shards preserving their ids.

We were allowing deviations between a shard and the master
by not specifying the label id for forwarded label create
rpcs. This cl breaks down the forwarding into 2 phases,
the first to create the label and the second to add the label
to the host, and sends the label id as part of the packet for
label creation.

TEST=atest label add -m host_not_on_shard new_label1
     atest label add -m host_on_shard new_label2
     checked that new_label2 have the same id on the master and shard.
BUG=chromium:448367
DEPLOY=apache

Change-Id: I29c99ca3fa25a0a3cb2cd91b759db009ee346799
Reviewed-on: https://chromium-review.googlesource.com/248835
Tested-by: Mungyung Ryu <[email protected]>
Reviewed-by: Dan Shi <[email protected]>
Commit-Queue: Mungyung Ryu <[email protected]>
5 files changed