rules.order is now required by the ruleset constructor

i didn't like reading `rules.order` in main().

the ruleset constructor now throws `missing_rules_order`
if it's not found or empty.
manpage: better description of runtime behavior

pseudocode seems clearer than bumbling prose.
README.rest: Build section redone