Volume namespaces - fixes 771

Fixes #771.

Some temporary code is in place so this doesn't break the rest of the system.
:question: If `_to_volume_name` is a temporary solution, wouldn't it have been easier to have `VolumeService.get` and `VolumeService.create` spawn a `VolumeName` with a default namespace if they receive `unicode` as the `name` parameter? Seems like the utility function is used ubiquitously with calls to those methods. I haven't read through #737 fully yet, is the longer-term solution to drop `_to_volume_name` or to rewrite it with real namespace support? I guess it doesn't matter too much for this branch, just the resulting scatter of `_to_volume_name` calls in this branch looks potentially fragile.