Revision 0.1.1: includes the externally visible save() method.