Initial support for save/load, see #103