systemlist: add `keepempty` option to preserve final newline

Broken out of #1822, this adds an option to `systemlist()` to preserve information about about the final newline ( it is named as `keepempty` of `split()`. ) Also update the documentation of the present behaviour.