Finished update method and refactored saving functions