Sync latest apiclient code from Oslo

We needs to update apiclient code to have ability to use it in py3 environment.

Сhanges from oslo-incubator related to apiclient
=====================================================================
Change 8575d87 - Removed copyright from empty files
Change bbaf317 - Use encode() instead of strutils.safe_encode() in fake_client
Change 41dc2b4 - Encode response from FakeHTTPClient
Change e6494c2 - Use six.iteritems to make dict work on Python2/3
Change 0d8f18b - Use urlutils functions instead of urllib/urllib2
Change 16fb43b - Replace data structures' attribute with six module
Change 9d0ec6a - Use six.iteritems for python 3.3 support in apiclient module
Change 12bcdb7 - Remove vim header
Change 4c22556 - Use py3kcompat urlutils functions instead of urlparse
Change 3970d46 - Fix typos in oslo
Change 1771a77 - Adjust import order according to PEP8 imports rule
Change da611e6 - Transform the for loop to expression
Change 4bfb7a2 - Apply six for metaclass
Change eca62f7 - Changed header from LLC to Foundation based on trademark policies

Change-Id: Ia87807828f344e463fa308413bd627dc57d1a41d
replace assertTrue(isinstance) to assertIsInstance

some of tests use different method of assertTrue(isinstance(A, B))
or assertEqual(type(A), B). The correct way is to use
assertIsInstance(A, B) provided by testtools

Change-Id: Ic3eb7b27dc96b0ec7d786c092fc3a6a513af64f7
Closes-bug: #1268480
CLI for disable service reason

Adds cli option to allow users to give reason
for service-disable. Also adds disabled reason
as a column in service list, so any disabled service
can be seen with reason.

A recent cinder change that allows disable-log-reason
allows users to provide reason for disabling service.
This just adds the cli option for the method.

Implements bp record-reason-for-disabling-service

Change-Id: I90f4566764790eeb0c047c4a0fd0108050ab6ad9
Updated from global requirements

Change-Id: Icc67410c32244a1b1dfb6484acf4581c53e47fb5
Add quota-delete command to cinder client

Add the command quota-delete <tenant_id> to the client.

This change depends on the cinder change:
Ia040a20abb831c311eb13624ddecbbf0f12fdd9f

DocImpact

Implements blueprint quota-delete
Change-Id: I1e5c98154dc3c6de168747eb912b45265cd1b9db
Merge "replace assertTrue(isinstance) to assertIsInstance"
Merge "CLI for disable service reason"
Merge "Sync latest apiclient code from Oslo"