Add quotas to Cisco N1kv plugins supported extension aliases

When using stable/icehouse branch, due to missing quotas extension,
VM bring up errors out. With the quota table now being created as
part of folsom_initial, adding quotas to supported extension aliases
in the N1kv plugin will fix the VM bring up issue.

Change-Id: I614b6c61c4c816289a71cc1ed125e6fae269781e
Closes-bug: #1375519
Neutron does not follow the RFC 3442 spec for DHCP

When setting a gateway and additional host routes in neutron subnet, the
gateway is only sent to clients via the router dhcp option, dhcp clients
conforming to rfc3442 will ignore router option if
classless-static-routes are available. This patch ensures setting both
the router option and the classless-static-routes including the gateway

Change-Id: Ia00b9385025020f848872309ae42ddac08528f53
Closes-Bug: #1317935
(cherry picked from commit ce59e63249dfcd86e782d056407e38e845cbe19c)
Security Group rule validation for ICMP rules

Currently there is no validation in Security Group rules
when an ICMP rule is added with icmp code alone. A rule
is getting added but there is a mismatch between SG rules
and the corresponding iptables rule that is added.
This patch does the necessary validation on the input.

Closes-Bug: #1301838
Change-Id: I510abac4c426f68ea57c99a5fef3da4058f88797
(cherry picked from commit 7607e3da884551e5c4cfe49de390afbddbb2a9b3)
Raise exception for network delete with subnets presents

N1kv plugin should raise an exception during network delete
if there is a subnet that is tied to that network.

Also changed the order of the assert arguments since now
it's encoraged to have <expected_value, actual_value>.

PLEASE NOTE:
This is a port to icehouse branch. It looks like there are extra test
cases not relevant to the fix. However, they are need it because:
- the code I've commited in delete_network() changes the behavior and
  it'll fail when we try to delete a network if there are subnets on it.
- hence all the test cases which tries to delete a network and don't
  delete the subnets first, will fail.
- Hence ALL the test cases in test_db_plugin.py file which does that
  (deleting the network without deleting the subnet first), needs to
  be overriding and this is why you see all these test cases which
  seems to not be related with the diffs in n1kv_neutron_plugin.py
  file but they are actually very related.

Conflicts:
	neutron/tests/unit/cisco/n1kv/test_n1kv_plugin.py

Closes-Bug: 1336107
(cherry picked from commit 89fb8b633b1ae34d0b56d73ee115462f4acc9540)
Change-Id: I92f177af0e2a2fbc460e0d668989ce590b7d1cb2
Merge "Add quotas to Cisco N1kv plugins supported extension aliases" into stable/icehouse
Delete DHCP port without DHCP server on a net node

A DHCP-network was deleted from one host using neutron
dhcp-agent-network-remove and then added to another host
using neutron dhcp-agent-network-add command. While the
dhcp-agent-network-remove command was in progress, the
host crashed.  As a result, the removal of the DHCP-network
was partially done. The network was disassociated from
the agent in mysql. However, the agent never made the
release_dhcp_port RPC call to delete the port -- even
after the agent restarted. The end result is that there
are two DHCP ports for the same network. One of these
is found on the host that is no longer hosting the
dhcp-server.

This fix make the DHCP agent invoke the release_dhcp_port
RPC call on a stale network whose dnsmasq process is not
running (not active). Before this change, the RPC call is
made on a stale network only when the dnsmasq process is
running.

Closes-Bug: #1244860
Change-Id: Ie0bafdac698810b5455550c306c6a75ddf91d9bb
(cherry picked from commit 8cf394b896e3644ff51edf6a0d462501fb6e6843)
Merge "Security Group rule validation for ICMP rules" into stable/icehouse
Merge "Raise exception for network delete with subnets presents" into stable/icehouse
Merge "Neutron does not follow the RFC 3442 spec for DHCP" into stable/icehouse
Fix fallback stdout logging.

Fallback stdout logging should not be triggered if another log is setup.
Search for .pyc files to support .py file stripping.
avoid Duplicate key errors in ml2_gre_allocations
avoid Duplicate key errors in ml2_gre_allocations