Optional size parameter for volume creation

This patch makes optional the parameter size
for creating a volume from a snapshot or other
volume.
The parameter is still required for other
kind of volume creation.

Change-Id: I75dcf0e647f6e82a2407bcf23ef359f5f87323e8
Closes-Bug: #1304463
Add commands for managing and unmanaging volumes

Add manage and unmanage commands.

Cinder code: https://review.openstack.org/#/c/72501

See also adding support for "bootable" flag for volume manage,
and changing the LVM backend to use the source-volume-name key
as part of the existing-ref structure, to make the CLI easier
to use:
https://review.openstack.org/#/c/108488/

Implements: blueprint add-export-import-volumes

Change-Id: I27d0d3396d80063a51b0fe56d2d3c92931fa9c6c
Retry when connection to cinder is refused

Currently, cinder client does not retry when connections to cinder
service is refused. There are many legitimate scenarios under which
retry should be attempted:
1) cinder service being restarted;
2) cinder service is running on multiple API nodes behind a LB, which
might be temporarily overwhelmed or being maintained.

In any scenario, retry with a backoff timer does not seem to hurt.

Change-Id: I3c290c59fa67262c4a3473815b4380ee39e24332
Closes-Bug: 1347843
Merge "Optional size parameter for volume creation"
Merge "Add commands for managing and unmanaging volumes"
Merge "Retry when connection to cinder is refused"