anchor.diff:  
   (defmethod print-object  ((object insert-record) stream)
     (with-slots (offset objects) object
  -    (format stream "[offset: ~a objects: ~a]" offset objects)))
  +    (format stream "[offset: ~a inserted objects: ~a]" offset objects)))
  +
  +(defmethod print-object  ((object change-record) stream)
  +  (with-slots (offset objects) object
  +    (format stream "[offset: ~a changed objects: ~a]" offset objects)))
   
   (defmethod print-object  ((object compound-record) stream)
     (with-slots (records) object
  
positive.code: `delete-record' containing a mark is created and added to the
  undo tree."))
  
  (defclass compound-record (drei-undo-record)
    ((records :initform '()
              :initarg :records
  
negative.code:     (change-class record 'insert-record
                    :objects (buffer-sequence buffer offset (+ offset length)))
      (delete-buffer-range buffer offset length)))
  
  (defmethod flip-undo-record ((record change-record))
    (with-slots (buffer offset objects) record
      (loop for i from 0 below (length objects)
  	  do (rotatef (aref objects i) (buffer-object buffer (+ i offset))))))
  
  (defmethod flip-undo-record ((record compound-record))
    (with-slots (records) record
  