Implements the Get Snapshot List task. Also refactors the create snapshot task just a bit to allow for more complete testing (and adds more tests.)