Make creating snapshots more flexible and efficient