Updated from global requirements

Change-Id: I5274d78b8c8c523263b9f70916a6720687b551ea
Test for distinct SQLAlchemy major releases

This change presents one way we might include test support
for oslo.db against specific SQLAlchemy major releases, currently
including the 0.7, 0.8, and 0.9 series.  As we will want to
begin including features within oslo.db that target advanced
and in some cases semi-public APIs within SQLAlchemy, it will
be important that we test these features against each major release,
as there may be variances between major revs as well as
version-specific approaches within oslo.

To accomplish this, I was not able to override "deps" alone,
as the SQLAlchemy revision within requirements.txt conflicts
with a hand-entered requirement, and due to pip's lack of
a dependency resolver (see https://github.com/pypa/pip/issues/988
and https://github.com/pypa/pip/issues/56) I instead overrode
"commands".  I don't know that this is the best approach, nor
do I know how the tox.ini file is accommodated by CI servers,
if these CI servers would need their tox invocation altered or
how that works.

This patch may or may not be the way to go, but in any case
I'd like to get input on how we can ensure that more SQLAlchemy-specific
oslo.db features can be tested against multiple SQLAlchemy versions.
Note that even with this change, running the "sqla_07" environment
does in fact produce test failures, see http://paste.openstack.org/show/85263/;
so already oslo.db expects behaviors that are not present in
all SQLAlchemy versions listed in the common requirements.txt.

Change-Id: I4128272ce15b9e576d7b97b1adab4d5027108c7c
Merge "Updated from global requirements"
Add a base test case for DB schema comparison

Add a base test case that allows to check if the DB schema obtained
by applying of migration scripts is equal to the one produced from
models definitions. It's very important that those two stay in sync
to be able to use models definitions for generation of the initial
DB schema. Though, due to the using of sqlalchemy-migrate (since we
had to write migration scripts manually and alembic can generate
them automatically) we have many divergences in projects right now,
which must be detected and fixed.
Fortunately, we can now rely on alembic + sqlalchemy implementation
of schema comparison instead of writing our own tools.

Blueprint: sync-models-with-migrations
Change-Id: I2d2c35987426dacb1f566569d23a80eee3575a58