Volume detachement and status type

Change status from sting to its own type to avoid misspellings.
Implement detach volume method.
Volume status type and get volume by id

Create volume status type to prevent misspellings.
Implement method for returning volume by id.
Snapshots and delete volume

Implement methods for working with snapshots.
Method for deleting volumes.