make previous operations list persistent across resets

- refactor the calculator table model into its own class
- write the previous operations to a file whenever they change
- load the previous operations from a file on startup