Make keep_reason an attribute of the snapshot and take multiple passes to ensure that all volumes of a raid group are kept/deleted together