Rework the migration implementation
The current migration code has many issues related to the
synchronization between nodes in the drbd network reconfiguration part.
As such, a new algorithm is implemented that uses the master as a
synchronization point, and implementing a cache of bdevs in the backend
to allow the rpc to resume from the previous state.
The code also splits the LU code in a few methods, so that we can reuse
it better when we implement the ‘--recover’ flag.
Reviewed-by: ultrotter