adds a save function