cyclades: Extra disk params when attaching volumes

When attaching a volume to an instance, use the
'GANETI_DISK_PROVIDER_KWARGS' setting to let the administrator pass
extra parameters to the Ganeti ExtStorage provider (exactly like in
instance creation).
cyclades: Delete volumes after quota handling

When processing an 'OP_INSTANCE_REMOVE' job, delete the volumes after
handling of the quotas. Otherwise, the quota mechanism will see no
active volumes and the quotas will get unsynchronized.
cyclades: Fix typo
cyclades: Check length of volume's name/descr

Check the length of the volume's name or description when updating the
volume.
cyclades: Use volume's ID in exception message
cyclades: Add missing lock when detaching a volume

Get server with 'for_update' option when detaching a server's volume.
cyclades: Reject reassign on pending vm action

Use validate_server_action() to make sure a reassign fails when another VM
action is pending.
cyclades: Fix typos
cyclades: Reject volume reassign on pending action

Use validate_server_action() to make sure that the volume's reassignment
fails when another VM action is pending. For example, that you cannot
reassign a volume if the VM (and the volume) is being destroyed.
cyclades: Fix bug with volume quotas

When computing 'cyclades.disk' resource for a 'DESTROY' server action,
count only the volumes that are in the 'IN_USE' status. If the
volumes are not in this status, then a commission has already been
issued for that action. However, there is an exception, if the server is
in 'BUILD' operstate, where we must also count the 'CREATING' volumes.
api: Add support for more types of (VM) console

Modify the current 'console' action to support VNC WebSockets (requires
snf-vncauthproxy=1.6). Also add support for the three OpenStack Compute
console actions (VNC, RDP, Spice), supported by Nova. RDP (Hyper-V
specific) and Spice currently return a '500 Not Implemented' cloud
fault.
ui: Switch to the noVNC websocket client

Update the console API call to request a vnc-wss console and replace the
TightVNC Java client with the noVNC HTML5 / websocket-based client.
Update Changelog