First draft of cluster chapter

I'm reasonably happy with the shape and content of the chapter here, so I think it's ready for a review.

The code is mostly in place, although there are a number of "TODO" tags that I'm still pondering.  The big one -- that affects the chapter -- is to remove the 'catchup' support entirely.  I can't quite convince myself that the implementation will still perform correctly without it, though.
Looking at all of your comments together, I wonder if this section gives the impression that I'm building a distributed bank-account system.  It's only intended as an example of an application that doesn't parallelize trivially (since it needs strong consistency of bank balances).  So it seems that a diagram, describing service access, and so on would be overkill.  I'll see if I can make it clearer that this is a motivating example.