Improve VLAN handling in bond.create
Improve VLAN handling in bond.create

We are now using the following design (see wiki):

Move VLANs, plus the VIFs-to-move on them, to the master.
* If all VLANs on the slaves have different tags, all VLANs will be
  moved to the bond master, while the same Network is used. The network
  effectively moves up to the bond and therefore no VIFs need to be moved.
* If multiple VLANs on different slaves have the same tag, they necessarily
  have different Networks as well. Only one VLAN with this tag is created
  on the bond master.
  All VIFs-to-move on the remaining VLAN networks are moved to the Network
  that was moved up (these are VIFs of VMs running on that host in question,
  or of VMs that can only be started on that host).

Signed-off-by: Rob Hoes <8783b3376fb07d39edffc8d7da68a6de3874a7e6@citrix.com>

robhoes/squeezed,johnelse/xcp-rrdd,djs55/xcp-networkd,sharady/xcp-networkd,djs55/squeezed,sharady/xcp-networkd,koushikcgit/xcp-networkd,djs55/xcp-networkd,koushikcgit/xcp-networkd,djs55/xcp-rrdd,simonjbeaumont/xcp-rrdd,djs55/xcp-rrdd,johnelse/xcp-rrdd,koushikcgit/xcp-rrdd,simonjbeaumont/xcp-rrdd,koushikcgit/xcp-rrdd,koushikcgit/xcp-rrdd