Revert "Revert "ovs-agent: Ensure integration bridge is created""

This reverts commit ccaad827b2bdcdcf4b538c5d5367f14cfc22c08f
that reverted e5cdad90f97d3a54a493eca19e7a3ff643426de1, which
was not the real cause of the problem the revert intended to fix.
Once this patch is back, change-id
I6381e3fee49910127c420dd2e3205c64cdb9e185 should fix the actual bug.

Change-Id: I4116bbb61aaf279d6d63a474134d47d97fe806f7
OVS agent: Correct bridge setup ordering

This patch fixes three issues that combined to break tunnel networks.

The first issue was the the failure mode was being set on the
integration bridge after the canary flow was installed. This
immediately wiped out the canary flow.

The second problem was that the main loop would sync tunnel networks
right before resetting the tunnel bridge when the canary flow was
missing. This meant that it would sync all of the tunnels via RPC and
then wipe them out.

The final issue was that after resetting the tunnel bridge in the
main loop, the tunnel_sync variable was not set to True, so the
tunnels would never be resynchronized.

This patch addresses the three issues in the following ways:
1. Set the failure mode on the bridge before the canary flow is
installed.
2. Run the OVS restart logic before the tunnel synchronization.
3. If the restart logic is triggered, set tunnel_sync to True to
trigger synchronization.

Closes-Bug: #1292105
Change-Id: I6381e3fee49910127c420dd2e3205c64cdb9e185