rules: generate the option->symbols mapping from our XML files
The vast majority of options are a straightforward foo:bar = +foo(bar)
mapping. Instead of maintaining two of those by hand let's generate
the rules file from the files we definitely maintain by hand: the
base.xml (and base.extras.xml) files.
This also makes it clearer which ones are exceptions and need to be filled in through other means (or ignored because the option does not affect any symbols).
The resulting rules file is identical to the previous hand-generated one but it is alphabetically sorted and uses different whitespacing.
Some options didn't have a base.xml entry, see #445 (closed) for tracking those.
Part-of #438