Make the openvswitch DKMS package load before the openvswitch-switch packages
Add guard code to detect an already-loaded non-DKMS openvswitch module
(if we need one), and unload it if we can.
Refactor Quantum barclamp to improve reliability:

  * Got rid of the highly dubious symlinking of the quantum
    openvswitch plugin config file back to the main quantum config
    file.  It was originally done to work around a bug that no longer
    exists.  Instead, we maintain the quantum openvswitch config file
    just like any other file.
  * Fix up all of the service blocks to use proper syntax and
    subscribe to the template blocks that the services depend on.
  * In the same vein, force serivces to restart immediatlely on any
    config file changes.  This prevents us from getting into the state
    where the config files had been changed, but the run crashed
    before we restarted the service.  When that happened, the services
    never were actually restarted to run with the proper configs.
  * Reorder blocks such that all config file changes happen before the
    services that subscribe to them happen.  This helps ensure that no
    service restarts are lost.
Merge pull request #108 from VictorLowther/pull-req-fix-ovs-package-install-order

https://github.com/crowbar/barclamp-quantum/pull/108

Merged by devtool for ArkadyKanevsky