Fix automatic subnet CIDR generation

This helps generating subnet masks by checking for
subnet masks already used from the same test class.

This also avoids having to check if a subnet with
conflicting subnet CIDR already exists treating
subnet error creation by looking in a local set
of already reserved CIDRs.

It fixes a problem that makes create_subnet
try to reuse the same CIDRs more than once
producing test failures.

It also allows methods to blank list some CIDRs
to avoid create_subnet from using it an therefore
avoid interferences.

Change-Id: I73e08a6832777d972990c3e68c582ef61568ad4e
diff --git a/neutron_tempest_plugin/scenario/test_floatingip.py b/neutron_tempest_plugin/scenario/test_floatingip.py
index 94ce482..251f21c 100644
--- a/neutron_tempest_plugin/scenario/test_floatingip.py
+++ b/neutron_tempest_plugin/scenario/test_floatingip.py
@@ -13,7 +13,6 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-import netaddr
 from neutron_lib import constants as lib_constants
 from neutron_lib.services.qos import constants as qos_consts
 from tempest.common import utils
@@ -76,8 +75,7 @@
     @classmethod
     def _create_dest_network(cls):
         network = cls.create_network()
-        subnet = cls.create_subnet(network,
-            cidr=netaddr.IPNetwork('10.10.0.0/24'))
+        subnet = cls.create_subnet(network)
         cls.create_router_interface(cls.router['id'], subnet['id'])
         return network