Book navigation - how to customize outline to show progress and enforce serial navigation
The Course module has the facilities needed to implement these features.  With a few code and css tweaks and otherwise standard Drupal content and block configurations I was able to satisfy these requirements to a large degree.

I should have explained in the original post that my site is actually a series of training modules.  I had originally planned to make this a book with the pages being the training modules.  With the Course module I instead created a book for the top level container and then added the courses (using the course content type) to this book.  Inside each course was another book that held the actual content pages.  I forced the user to navigate the pages of the course using the navigation links at the bottom of each page by hiding the outline until they had finished each course.  They could also see their progress by navigating through the courses to see which ones they had completed (with a large green check mark).  This is not a perfect solution but it works.