Introduced output contexts for more general handling of serialised content.
Simplified the instantiation of new serialisers when encountering different
region formats.
1 = Level 1 =
2 Text
3 == Level 2 Heading ==
4 Text
5 Not == a heading ==
6 == Not a heading == either
7 = Mismatched heading ==
8 == Another mismatched heading =
9 === Heading __Underlined__ ===