Skip test_update_router_admin_state for baremetal

The baremetal deployment relies on a flat network without tenant isolation.
The router servicing this single network should not be taken up and down,
especially if there are other tests running that may be accessing things
via public IP.  This is accounted for already during network/router/subnet
creation, but this test needs to be skipped as well.

Change-Id: I4064e134493085d90a0f0967b7b9ad640aadf75c
Closes-bug: #1400902
Merge "Skip test_update_router_admin_state for baremetal"
Framework for staged setup

Split up the resource_setup in a number of methods to avoid
calls to tearDownClass when not needed, and enforce good
practices in the structure of the setUpClass.

Partially-implements bp:resource-cleanup

Change-Id: I3eae85f8e42f8ed58c87e6336792faf66c8f13aa
Make InvalidServiceTag inherit from TempestException

Exceptions which inherit from RestClientException should raise based
on an error response which is returned from REST API servers(nova-api,
etc). However, InvalidServiceTag is not now.
We have a plan RestClient is implemented in tempest-lib and related
exceptions also are moved to tempest-lib.
For doing that, this patch separates an unrelated exception from
RestClientException.

Change-Id: I49d50fb14b18c6fb263308a68d7ac6a97b1a9800
Move safe_body() into specific class

safe_body() is used in RestClient class only, so this patch
moves safe_body() into the class for the code cleanup.

Change-Id: Ice80d5ab19438162ba7a5705fa78c1ab91c1ccd5
Merge "Framework for staged setup"
Merge "Make InvalidServiceTag inherit from TempestException"
Merge "Move safe_body() into specific class"
Change rest client exceptions' inheritances

RateLimitExceeded, ServerFault and OverLimit raise at rest_client layer
and they should inherit from RestClientException for representing what
happens clearly. This patch changes them.

Change-Id: I0b74bd44a88cc68bdaeab6bd605722d47f5a28a9
Merge branch 'master' of https://github.com/openstack/tempest