These functions should be const
Provide a generic volume interface

To reduce massive code duplication, the base volume actor class provides a volume() function.
It returns a pointer to the Cubiquity volume base type and allows us to call the generic functions polymorphically.
As a result a bunch of functions can be moved to the base actor class.