Improve ovs_lib bridge management

Add the ability to add and remove bridges, check for bridge
existence, and lookup the bridge associated with a port.

This change is in support of functional testing for an ovsdb
monitor.

Partial-Bug: #1177973

Change-Id: I419923d8d77983997cd347fcf063b0bc367c0bbc
(cherry picked from commit 010bd1f392e67a6fcd276593b8c79acfe41d1cc7)
Add the option to minimize ovs l2 polling

This change adds the ability to monitor the local ovsdb for
interface changes so that the l2 agent can avoid unnecessary
polling.  Minimal changes are made to the agent so the risk
of breakage should be low.  Future efforts to make the agent
entirely event-based may be able to use OvsdbMonitor as a
starting point.

By default polling minimization is not done, and can only be
enabled by setting 'minimize_polling = True' in the ovs
section of the l2 agent's config file.

Closes-Bug: #1177973

Change-Id: I26c035b48a74df2148696869c5a9affae5ab3d27
(cherry picked from commit cb0df591a9508e863ad5d5d71190eca349dc551f)
Ensure get_pid_to_kill works with rootwrap script

To ensure that correct process is killed when using a rootwrap
script, we must recursively list the children of our top-level
process and kill the last one.

This solves the same issue as 61e9268bd4b696860eeb5a6ce59ae6bf42b1f0c8
but is a different implementation due to not being able to add the
psutil dependency to an existing release.

Change-Id: Ic9d0512a3426c7b85ad88a71ee7062ba2c304322
Update send_arp_for_ha default in l3_agent.ini

The default for send_arp_for_ha was 3 and is now 0.
This patch changes the comment in l3_agent.ini to
show the new default.

Change-Id: I59a807105d71d1118fd9ae586a6c9a07995f81cd
Closes-Bug: #1292293
(cherry picked from commit 4a6e77e316cf50761b1ee07be63e490f29519711)
Reduce debug logging output

Reduce logging output from amqp/qpid to greatly increase the
signal-to-noise ratio of debug logs.  Also alphabetize the list.

Cherrypick of oslo update [1].  Introduced into neutron master branch
with other changes in [2]

[1] https://github.com/openstack/oslo-incubator/commit/fb8075a1
[2] https://github.com/openstack/neutron/commit/1506f26b

Change-Id: I46a5f37afd92d174d8844cb73c13ccf701baa312
Fix error message typo

 * Fix error message typo in "_network_admin_state"
   function where "Network Admin State Validation Falied"
   should be changed to "Network Admin State Validation Failed"

Change-Id: I767e93c300250b4422e3980f799862ceb976c951
Closes-Bug: #1276409
(cherry picked from commit 844ae433c17ee3956a8c83ed693ca44c8e3c38de)
Use a temp dir for CONF.state_path

external_pids will defaults to $state_path(/var/lib/neutron)/external/pids
which isn't accessible when running unit tests so use a tempdir for
CONF.state_path. This bug arose when oslo.config 1.3.0 came out which
fixed bug #1282250 (I4324bda6f3de3cdf05f8eb3cf16052c04018dec8) and
caused this issue.

Conflicts:
	neutron/tests/base.py

Change-Id: I253c5ea85c51eff94399da0b9462d10a9c509a0f
Closes-Bug: #1301027
(cherry picked from commit f59e5fff820c1cf6900100d058622b8b1cbb03ca)
Merge "Reduce debug logging output" into stable/havana
Merge "Update send_arp_for_ha default in l3_agent.ini" into stable/havana
Merge "Improve ovs_lib bridge management" into stable/havana
Merge "Add the option to minimize ovs l2 polling" into stable/havana
Merge "Ensure get_pid_to_kill works with rootwrap script" into stable/havana
Merge "Fix error message typo" into stable/havana