Test cases for Endpoints V3 API

Adds a test script "test_endpoints.py" so as to test CREATE, DELETE,
LIST, UPDATE API actions. endpoints_client.py is added with all the required
methods. Implementation done in JSON and XML interfaces.

Implements: blueprint keystone-v3-endpoints-api-test

Change-Id: Icd47728d161d440440f6b4f103a55125da8bbf29
Remove smoke.py and clean up base test classes

This commit removes the smoke.py file and reworks the classes in
test.py to be a bit simpler. Previously, DefaultClientTest
was only really needed by smoke.py for the smoke tests. (the only
place where python clients were used) However, it remained a separate
class because of the status_timeout() method. This breaks out that
method and removes the class so that it is more obvious that the
smoke tests are using tempest.manager for it's clients.

Change-Id: Ib4333483c5734d14cac6376837ca770e96bd050e
raise the first exception in flavors and security_group test

The exceptions raised in the finally block hides the exceptions raised
in the try block.

For example if a resource creation fails you would see the exception from the
resource deletion.

This change replaces the finally usage by addCleanup methods.

test_security_group_rules_create_delete removed because of a duplication.

Change-Id: Id69a3b7edd0933f4d5967bd8b84fb16a2095ab0a
Merge "Remove smoke.py and clean up base test classes"
Merge "raise the first exception in flavors and security_group test"
Merge "Test cases for Endpoints V3 API"