more work on save and load (see #5)