Add snapshot restore feature