Implement line-based sorting of GFF3 output

This PR adds a new stream which outputs annotations in GFF3 format under the constraint that the start coordinates of all GFF3 lines for a sequence region be increasing. This property is used by some tools like Tabix, but not implemented in the regular `GtGFF3OutStream`. The regular one always finishes outputting all nodes in a CC before moving on to the next, which leads to breaks in sortedness in the case of overlapping CCs.
This functionality is available in the `gt gff3` tool using the `-sortlines` switch. There is also a new Lua tool in the `testdata/gtscripts` directory to check this 'line-sortedness' property.
Closes #355.