SI-7791 Line number table reflects underlying file

Since positions ultimately know their ultimate
positions in their ultimate source, use that line
number, ultimately, when emitting line number
table entries.

It is possible, but possibly not useful, to emit
both the actual (ultimate) line number and the
nominal one.

The `int`-valued line number of the `StackTraceElement`
is "derived" from the attribute.

In global, wrapping a `BatchSourceFile` as a
`ScriptSource` happens in `compileSources` to
facilitate testing.

A `ScriptTest` facility is provided to facilitate
testing the script facility. It is rather facile.
Merge pull request #2885 from som-snytt/issue/7791-script-linenums

SI-7791 Line number table reflects underlying file