Volume service helper 626

Fixes #626
Also fixes #305 


This factors the `VolumeService` creation and startup out of all of the "scripts" that need that service and puts it into a single `ICommandLineScript` implementation.  This, in turn, passes the initialized service in to the other "scripts" that need it.

I don't understand why this is a classmethod? There are various places in the tests where we patch the `_service_factory`, but it seems that we could equally well patch that attribute of an instance.