Sync oslo imageutils, strutils to cinder

Changes in imageutils:
===============================
bec3a5e Implements SI/IEC unit system conversion to bytes
8b2b0b7 Use hacking import_exceptions for gettextutils._
aad179d Fixing misspelled encryption key in QemuImgInfo
12bcdb7 Remove vim header
2bd46eb Refactors byte size extraction logic

Changes in strutils:
====================
bec3a5e Implements SI/IEC unit system conversion to bytes
e53fe85 strutils bool_from_string, allow specified default
8b2b0b7 Use hacking import_exceptions for gettextutils._
84d461e Fix a bug in safe_encode where it returns a bytes object in py3
12bcdb7 Remove vim header
3970d46 Fix typos in oslo
1a2df89 Enable H302 hacking check
67bd769 python3: Fix traceback while running python3.
b0c51ec Refactors to_bytes

Change-Id: I765bcd40f959162874bfda412b69e673c6e5f732
Related-bug: #1189635
Related-bug: #1193765
Related-Bug: #1257829
Add x-openstack-request-id to cinder responses

x-openstack-request-id is the common header name for request ID going forward.
Currently, only glance and neutron return this header. Using the request_id
middleware is a convenient way to ensure this header is in the response. We will
also be using the middleware to generate the request ID.

The ID will be generated by the middleware and is inserted into the request
environment. The current code generates the request ID in the constructor of
RequestConext; with this change, the ID is generated beforehand and passed in to
the RequestContext constructor. Not much different here: a request ID is
generated and is available for use in the handling of the request.

On the response end, the middleware is again used, this time to attach the
x-openstack-request-id header, using the value of the generated request ID. The
current code attaches the x-compute-request-id header.

This change is a necessary step toward logging the mapping of request IDs across
OpenStack services.

UpgradeImpact: api-paste.ini is modified

Change-Id: I30c4e5efa77f9ebffb485d2ea6a6c3f78eb1573f
Implements: blueprint add-standard-req-id-header
Add support for FC zone lifecycle management

Allows automated zone lifecycle management in the attach/detach
entry points of the volume manager for FC volumes (when fabric
zoning is enabled). Zones are configured automatically as part
of the active zone set in the FC SAN to provide a more flexible
and secure way of controlling access. FC zone manager enables
SAN vendors to add support for pluggable implementations.

Change-Id: I86e02e11afec71ffa25dfbcbd0dc3ddcc35741ea
Implements: blueprint cinder-fc-zone-manager
Driver for IBM SONAS and Storwize V7000 Unified

The IBM NAS Driver currently implemented to work over NFS protocol,
and implements required set of features for OpenStack Icehouse release,
using the features of these storage products. It allows IBM® SONAS®
and Storwize® V7000 Unified filers to host storage for OpenStack
environment by integrating with Openstack Cinder service.

DocImpact

Change-Id: I0d630bf7e69454b88e9d1e93b4099631f6138204
Implements: blueprint ibm-nas-volume-driver
Related-Bug: #1281152
Merge "Driver for IBM SONAS and Storwize V7000 Unified"
Merge "Add x-openstack-request-id to cinder responses"
Merge "Add support for FC zone lifecycle management"
Merge "Sync oslo imageutils, strutils to cinder"