Clean up OdtDocument cursor position tests

Make OdtDocument cursor position tests more granular in how they are reported. This makes it easier to troubleshoot individual failing tests as the individual test is more specific.

* Extend core test runner to cope with test names containing angle brackets
* Verify the number of steps vs. expected number of cursor positions
* Remove doc length check for non-changing variables
* Report one test per cursor position document fragment
I propose to instead add a generic `encodeForHTML` (or better named) method which encodes `<`, `>` and `&` and to use it in all places where text is added to the HTML output.