Parsing:  Generalized type of registerHeader, using new typeclasses.

New type classes HasReadeOptions, HasIdentifierList, HasHeaderMap.
These allow certain common functions to be reused even in parsers
that use custom state (instead of ParserState), such as the MediaWiki
reader.

Minor API bump.
MediaWiki reader:  Add automatic header identifiers.