This commit creates classes to handle the communication and sync
of deploy state between controllers and also add a operation
counter of deploy states.
This commit also synced with peer controller when deploy starts.
Test Plan:
PASS: Software.json of peer controller updated on deploy start.
PASS: Software.json of synced folder on peer controller matches
active controller on deploy start.
PASS: Software.json of peer controller updated with deploy state
change.
PASS: deploy state synced to peer in DX system when software deploy
start succeed.
Depends-on: https://review.opendev.org/c/starlingx/update/+/904362
Story: 2010676
Task: 49325
Change-Id: Id69b15e38402b5314657de963f5b69f164e2c351
Signed-off-by: Luis Eduardo Bonatti <LuizEduardo.Bonatti@windriver.com>