Preserve packet:byte counts in iptables_manager.

Ported the nova iptables manager code to neutron, so that we
use iptables-save/restore with the -c flag to save/restore
the chains and rules with their packet:byte counts.  All other
changes were ported as well to keep the code as similar as
possible between the two, although they will be different as
I had to fix other bugs found during testing.

Updated tests accordingly to account for new calls and
input/output changes in formatting.

Changed iptables_firewall code to add iptables rules in the same
order that iptables-save will print them: source/dest, protocol,
sport, dport, target; else iptables_manager won't be able
to find them to preserve their [packet:byte] counts.
Tweaked other rules accordingly as necessary.

Fixed a bug introduced in an earlier version of this patch where
_modify_rules() sometimes wouldn't match an existing rule correctly
if not top=true.

Fixes bug 1125393

Change-Id: I858c552d8a7ae24f52f8e8daa05ac37026705773
Add support for the extra route extension in the NVP plugin.

The underlying feature is available in NVP 3.2, which introduces a
new type of router. Therefore, create_lrouter needs to be made
version 'aware'.

This led to a number of fixes in the nvplib, especially around how
version is retrieved and how version-dependent methods are called.

Implements blueprint nvp-extra-route-extension

Change-Id: Ie4e2d93f70e1948a62563c8523aea61bb2194c84
Use the correct tunnel_type to notify agents

Bug #1201274

Change-Id: I9de55d168ba03cb6a5273b4c2ce140cd190e38ee
Merge "Add support for the extra route extension in the NVP plugin."
Imported Translations from Transifex

Change-Id: I241d1c1217fcf32e2d02832db15a9c5ab5da4359
Fix random OverflowError exceptions in gate-neutron-python26 tests

These errors seem to be linked to the NEC plugin and http connections
not being stubbed out correctly. This patch ensures do_request is
stubbed out prior to the tests execution; this should be enough
to prevent timeouts from occurring again. Stubbing out the call has
no effect on the coverage of the agent scheduler tests for the NEC
plugin.

Fixes bug #1201478

Change-Id: Iee3cb3cb3137cedcf97c707ea7fde9114b7264b6
Ensure PortSecurityDBTestCase loads correct plugin

Bug 1201569

If a plugin is passed to the setUp method, that plugin
should be loaded instead od DB_PLUGIN_KLASS

Change-Id: I81df9f62e7399f5a76a07e504679ee8311e5855e
Re-assign quantum.api module as last operation

Bug 1199443

This avoids reset of locals in quantum/api/__init__.py,
resulting in sys being None when assigning quantum.api.extensions
to neutron.api.extensions

Change-Id: I2da8b336679b643c92824399a05ca1b9980d1598
Merge "Fix random OverflowError exceptions in gate-neutron-python26 tests"
Merge "Preserve packet:byte counts in iptables_manager."
Merge "Re-assign quantum.api module as last operation"
Merge "Ensure PortSecurityDBTestCase loads correct plugin"
Merge "Use the correct tunnel_type to notify agents"
commit c227446f15c91cd157d60cac1c2f35437df42de9
Author: mathieu-rohon <mathieu.rohon@gmail.com>
Date:   Mon Jun 17 17:56:14 2013 +0200

    Add gre tunneling support for the ML2 plugin

    This patch add the type_driver GRE to enable the creation of GRE
    tunnels with the OVS agent.
    No Endpoints ID are managed. Only Endpoint IP are stored in DB,
    and this IP is proposed as an endpoint ID for the OVS agent.

    Implements: blueprint ml2-gre
    Change-Id: I1a33a4bd3ebc4c97eecf17a59ce16b8c2066ec66