Fixes #186
Merge pull request #188 from Cerberus98/master

RM5458
Adding route/subnet quota with default of 3

RM982
Merge pull request #189 from insequent/quota_for_routes_on_subnets

Quota for routes on subnets
Merge pull request #190 from asadoughi/fix_186

Fixes #186
Fix UT based on upstream change

neutron commit 9bf0e6654480f98f2315a43687b267263a82a823 removed
helper methdods from neutron.db.api.
Merge pull request #192 from asadoughi/neutron_db_api_upstream_change

Fix UT based on upstream change
Fixed bool bug and add comments to clarify
RM7213 Added IPPolicyCIDR.{first_ip, last_ip}

* Added addition of columns alembic migration.
* Added population of columns alembic migration.
* Added API code to populate columns on ip_policy_{create, update}.
* Re-wrote ip_availability script based on added, populated columns,
  vastly improved runtime performance by decreasing number of SQL
  queries.
Merge pull request #191 from asadoughi/ip_policy_first_last_ip

RM7213 Added IPPolicyCIDR.{first_ip, last_ip}
RM8499 added ip_policy_id to subnet response
Merge pull request #193 from asadoughi/rm8499

RM8499 added ip_policy_id to subnet response
Removing the subnets from shared networks

RM8483

Created regression in the test_networks suite. Can only test 'getting' a
shared net here. It isn't possible, without modifications to the mock, to test
'not getting' a shared net. I considered modifying the mock but then all these
tests would pretty much be testing my new mock instead of actual things.

All this is supposed to do is ensure that, if a network is shared, the subnets
are not included in the output.

Updated the not shared check to ensure correctness.
RM981

As per the Neutron documentation, when setting a gateway IP on a subnet
and that IP exists WITHIN said subnet, an allocation pool must prevent
that IP from being assignable. Because we also have ip policies and routes,
this patch provides checking on routes and ip policy changes. Because of
the number of cases to cover, I aggregated the majority of the necessary
pool logic into a new AllocationPools class.

The following cases are covered by this patch:

* Creating a subnet with allocation_pools and routes
* Updating a subnet with allocation_pools, routes and policies
* Creating a route with existing ip_policies
* Updating an existing ip_policy that previously excluded a route gateway

Creating a new policy with existing routes isn't capable of suddenly
allowing a route gateway to be assigned when it was previously
disallowed, so that case doesn't require additional handling.
Merge pull request #195 from Cerberus98/rm981_merge

RM981
Fix IP Policy creation

- ensure db_api.ip_policy_create is only called once
- fail early if subnet or network already has IP Policy
- ensure default IP Policy CIDRs aren't duplicated

RM3793
Merge pull request #196 from jmeridth/fix_creation_of_ip_policies

Fix IP Policy creation
Merge pull request #194 from roaet/remove_subnets_from_shared_networks

Removing the subnets from shared networks
Fixes #198
Merge pull request #199 from jmeridth/fix_git_modules_for_wiki

Fixes #198