Break up the volume renderer code

This splits the `VolumeRenderer` class into several different classes. It should make it easier to add new `Actor` objects to the scene.
What do you think about removing the `ABCVolumeSceneMember` interface for `VolumeRenderer`? This method is special, since it doesn't need the `volume_actor` but sharing a name with the other members suggests otherwise. Maybe `add_volume_to_scene`?