Refactor unit tests code for python3 compatability

The builtin basestring abstract type was removed in python3,
use str instead, we need to using six.string_types to replace
the basestring for py3 compatibility.

Partial Implements bp basestring-py3-compatible

Change-Id: I0f6a0f9ca4e17800407f3c1bbdce11a46288f693
Add flavor-manage to core for V3 API

Adds the flavor-manage plugin to the core list for the V3 API.
This is part of the process of adding all of the flavor related
extensions to core, with the exception of rxtx, as per the discussion
here: https://etherpad.openstack.org/p/NovaV3APICore

Partially implements blueprint nova-v3-api

DocImpact

Change-Id: Idbedce5cc5936abc52235cd40573c8fe841f24fe
Replace basestring by six for python3 compatability

The builtin basestring abstract type was removed in python3,
use str instead, we need to using six.string_types to replace
the basestring for python3 compatibility.

Partial Implements bp basestring-py3-compatible

Change-Id: I719e104ae46ebb6e986c53a019b93e3a45e6d0fd
Fix compute_api tests for migrate

They are actually testing resize because of 'flavor_id_passed' being
passed in as True to _test_resize(), when that is already the default
for testing resize.

Change-Id: Iae31dad8e869481898579b5cd752e8e5baa306d1
Merge "Apply six for metaclass"
Merge "Add byte unit constants"
Fix bad typo in cloudpipe.py

Looks like a refactoring problem. we should be raising
exc.HTTPBadRequest where exc is in webob.

Change-Id: Id6d4e1d43f1d49c05d9da1234e40a603022d35c2
Change testing of same flavor resize

Resizing to same flavor for compute cells should not fail, so this patch
reworks the current test such that it'll be easier to modify when the
compute cells bug is fixed in an upcoming patch.

Change-Id: I4331db8636c2256f18cd0a2196033e1a2257c971
Call baselineCPU for full feature list

Since the libvirt API getCapabilities doesn't return a full list of CPU features we need
to call the libvirt API baselineCPU with the new flag VIR_CONNECT_BASELINE_CPU_EXPAND_FEATURES
to get all features.

Since the flag is new this code checks for its existence before calling baselineCPU.

Also, due to some rather stringent input checking on libvirt's part, just calling
baselineCPU with the output from getCapabilities doesn't work, you have to extract
just the <cpu> stanza from the XML returned by getCapabilities.

Add unit test to make sure that the current verion of libvirt works (although
it will hide some features) and the new version of libvirt will correctly
return all features.

Fixes bug 1217630

Change-Id: I266bacb7e0c79d9c5b13ff163f01d14cad9ab57b
Add tests for compute (child) cell

When testing the compute API, we should also be testing when the
cell_type is 'compute'.

Change-Id: Ib0a82e00040eed5814ed7a031070b343d32ee2db
Fix migrate w/ cells

While in a child cell, do not raise when the current flavor is passed
into compute API's resize().  This is behavior that should be limited to
nova-api.

Closes-bug: 1243816

Change-Id: Ie67af3ab3003164e9742a8c4d5bd75502dca96c4
Merge "Fixes unicode issue in the Hyper-V driver"
Merge "Add missing ' to extra_specs debug message"
Merge "Add testr concurrency option for run_tests.sh"
Merge "Reply with a meaningful exception, when libvirt connection is broken."
Merge "Fix getting nwinfo for Instance obj"
Merge "Fixing ephemeral disk creation."
Merge "Make security_group_get() more flexible about joins"
Merge "Ensure migration 209 works with NULL fkey values"
Merge "Fix tests for migration 227 to check sqlite"