[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: I9773def43b94ad77e85bfeadcb69bbddf9e02460
Reviewed-on: https://chromium-review.googlesource.com/240348
Tested-by: Mungyung Ryu <mkryu@google.com>
Reviewed-by: Dan Shi <dshi@chromium.org>
Commit-Queue: Mungyung Ryu <mkryu@google.com>
3 files changed