anchor.diff:  Let's start out with a simple SCCS file to give some context.
   
   The file history is linear: 1.1->1.2->1.3
  -The character control-A ('\001') has been replace by two chars "^A".
  -
  +The character control-A (`\001`) has been replace by two chars "`^A`".
  +
  +----
   ^AH41861
   ^As 1/2/2                                   
   ^Ad D 1.3 09/12/26 11:21:35 rick 4 3	<-- rev 1.3, serial 4, parent 3
  
positive.code: ^AE 15
  ^AE 17
  ^AE 12
  
  However, if we were to weave it incrementally, we'd get something like:
  
  ^AI 12
  ^AD 15
  ^AD 17
  
negative.code: 
  Along the same lines, the only empty data block to be encoded is an
  empty new file.  It is this way because a new file is basically:
  ----
  printf("\001I 2\n");
  system("cat file");
  printf("\001E 2\n");
  printf("\001I 1\n");
  printf("\001E 1\n");
  ----
  The `I-E` pair could have been skipped by seeing that the data file was
  zero size.
  
  === diff -an
  
  Most modern version control systems (not git) can be built on the
  output of "diff -an old new".  This is the RCS version of diff,
  though RCS on the trunk does "diff -an new old".
  
  Example: we add a new line to the start:
  
  ----
  new line
  line 1
  line 2
  line 3
  ----
  
  diff -an output:
  
  ----
  a0 1
  new line
  ----
  
  The weave function
  (http://www.bkbits.net/u/bk/bugfix/src/slib.c?PAGE=anno[`slib.c:delta_body()`]) 
  reads that as "go after line 0,
  and add one line.  Line 0 is the start of the file.  The new weave
  then looks like:
  
  ----
  ^AI 3
  new line
  ^AE 3
  ^AI 2
  line 1
  line 2
  line 3
  ^AE 2
  ^AI 1
  ^AE 1
  ----
  
  Let's do it again.  Add a line after our new line:
  ----
  new line
  another new line
  line 1
  line 2
  line 3
  ----
  
  `diff -an` output:
  ----
  a1 1
  another new line
  ----
  
  Weave:
  ----
  ^AI 3
  new line
  ^AI 4
  