Save and restore functions

This PR adds basic save and restore functionality for text and images.
As we put the UI on top of these utilities we should probably abstract the save / load / clear out into a utility class.  Waiting to see what the UI needs and then I can abstract this a bit.