Add configurable HTTP timeout to cinder API calls

Some Nova API calls require synchronous use of cinder.  (e.g. volume
list)  If the call to cinder lands on a slow performing or otherwise bad
cinder API node, the user of Nova API will see poor performance.

This patch adds the ability to control HTTP timeouts when calling the
cinder API.  By configuring a timeout, nova will be able to more quickly
retry its cinder request and hopefully land on a better performing
cinder API node.  This will help make the API response times more
predictable.

For backward compatibility, the default timeout value is None.

Closes-Bug: 1329797
DocImpact

Change-Id: I5cccced524d9a9d69ed41f755781d0b7ae3dc970
Merge "Add configurable HTTP timeout to cinder API calls"