Fix base test class for functional api testing

To support in-tree functional api testing, the test class common
across all types of testing can't import modules that define
configuration that Tempest also defines because duplicate
configuration definitions result in runtime errors.  A previous change
(I44251db399cd73390a9d1931a7f253662002ba10) moved conflicting imports
to a separate module, but subsequent additions have added new conflicting
imports.

This change creates a new test class that is safe to use for all types
of testing (neutron.tests.sub_base.SubBaseTestCase), ensures that the
existing existing base test class (neutron.tests.base.BaseTestCase)
extends it, and documents their respective responsibilities.  This
will hopefully make it less likely that the functional api job will be
broken by changes to the base test class.

Implements: bp retargetable-functional-testing

Change-Id: Ifa270536481fcb19c476c9c62d89e6c5cae36ca1
Merge "Fix base test class for functional api testing"