Merge snapshotPivot and snapshot cli commands and support multiple outputs

Not entirely sure I have this right. Will add a cli test once I get a confirmation.
This (still) feels dirty and I'm torn. I might merge for now, but @markhibberd should I just use `TemporaryReference` inside of chord and pass a callback with extract? Should we perhaps have a flag for debugging that leaves temporary resources? The problem being that when something _does_ go wrong, chances are you haven't disabled the delete.