adds saving and loading