Refactor final output formatting
- Use 'nowiki' strip marker to prevent list processing (also known as doBlockLevels()). This resolves various issues related to using <syntaxhighlight/> blocks in lists and lists suddenly appearing inside <syntaxhighlight/> blocks. Fixes T17333, T25674, T104067.
- To prevent <p/>-wrapping resulting from the above, add our own wrapper <div/> around the output.
- Since we already have our own wrapper, remove Pygments' one and extend it with custom attributes. This resolves some regressions from the GeSHi migration. Fixes most of T103964.