Grammar.
candidate-x need never be #f, because if the maximum that it is
supposed to represent is not unique, I am free to choose any option.
A note about the presence of submodules.
Move option loading to the places that use them.
"Developer documentation"

a table of contents in the README file, and some enhanced header
comments in the individual sources.