tests: add ContextTestCase that mocks clients
tests: add ContextTestCase that mocks clients

Add tests.unit.test.ContextTestCase class that can be inherited by
all context-related TestCases and provides a ScenarioTestCase-similar
API with self.clients and self.admin_clients.

Usage:

    class MyContextTestCase(tests.unit.test.ContextTestCase):
        def test_something(self):
            mock_list = self.admin_client("nova").hypervisors.list
            mock_list.return_value = [10, 20, 30]

            #...

Change-Id: I95d001acc28e499e386abe6f2e40de7baec74084

openstack/rally,yeming233/rally,gluke77/rally,openstack/rally,vganapath/rally,openstack/rally,eonpatapon/rally,eayunstack/rally,gluke77/rally,openstack/rally,vganapath/rally,vganapath/rally,yeming233/rally,gluke77/rally,amit0701/rally,amit0701/rally,eayunstack/rally,eayunstack/rally,gluke77/rally,vganapath/rally,amit0701/rally,eonpatapon/rally