Implement a proper incremental parser for TSV documents

This commit introduces/improves the `parseTvsWithDiagnostics`
function to parse the input TSV incrementally, collecting errors
as we go, and eventually reporting them upstream via the newly
added `emitTsvParseWarning` function.
Status Job ID Name Coverage
  Cabal
canceled #17867
cabal

 
  Stack
canceled #17868
stack

 
  Bench
canceled #17869
allowed to fail manual
bench

 
  Test
canceled #17870
test