refactor accessors
improve the saves methods
dry it up