Adds volume support for the V3 API

Adds the ability to attach, detach and swap volumes on
servers. There is no code shared with the v1_1 version
because for V3 the volumes interface is completely different
and the attach/detach/swap functionality is simply a server
action rather than something accessed through a special resource.

Partially implements blueprint v3-api

Change-Id: Ib405f821fe557745d11cff9db08381fc15233fe5
Fix QuotaClassSet and their tests

Some parameters of quota_class_set are not used in Nova v1.1/v2 API. And
some items have wrong type and key name.
QuotaClassSet class has id property originally. But 'id' comes from Nova
API currently. So we can just use it as its id.

This commit fixes and cleanups them.

Change-Id: Ib963ff82e3107d7b78a3a63a2fc1cd6b6bbe47b0
Merge "Fix QuotaClassSet and their tests"
Merge "Adds volume support for the V3 API"