The shade volume API was updated to return a dict rather than the object as returned by cinder.
Do not attempt to attach an already attached volume. Likewise, do not attempt to detach a volume that is not attached. This version adds support for check mode.