Functional test suite for devtest.

This commit adds a test suite that can be run against the OpenStack
environments that are set up by devtest.  There are tests for the
seed, undercloud, and overcloud.  The test suite could be run at the
end of a devtest run, or at various points along the process to test
progress (e.g., run tests in test_seed.py after setting up the seed).

The tests are useful to make sure that things were set up correctly
and how devtest expects.  Granted, if you get to the very end of
devtest, it's likely everything worked.  But, they also add value in
that they can be used to troubleshoot what went wrong if a devtest
step fails unexpectedly.  For example, a test that verified the nova
baremetal flavor was created as we expect, might uncover a bug if the
flavor wasn't set up correctly by Nova.

We could also have TOCI execute the tests at the end of a run.

For now, there are just a few tests to illustrate how this might work.
More tests could be added for things like:
 - verifying neutron was set up correctly
 - verifying nova was set up correctly (flavors, nodes created, etc)
 - shelling out to virsh to verify baremetal{0-2} were setup
 - basically, we could test anything that devtest does.

Change-Id: I71e0276146e5270556d1aeea457f77de31cc0c12