anchor.diff:  
   - Fully composable test suites
   - 'setup()' and 'teardown()' for tests and test suites
  -- Each test runs in it's own process
  +- Each test runs in its own process
   - An isolated test can be run in a single process for debugging
   - Ability to mock functions
   - The reporting mechanism can be easily extended
  
positive.code: 'read_paragraph()' function could quite legitimately call the stream
  after it had run off of the end.  OK, that would be odd behaviour, but
  that's not what we are testing here.  If we were, it would be placed
  in a test of it's own.  The 'always_expect()' call tells *Cgreen* to
  keep going after the first three letters, allowing extra calls.
  
  As we build more and more tests, they start to look like a
  
negative.code: 
  Where are the assertions?
  
  Unlike our earlier stub, 'reader()' can now check its parameters.  In
  object oriented circles, an object that checks its parameters as well
  as simulating behaviour is called a mock object.  By analogy
  'reader()' is a mock function, or mock callback.
  
  