Drop an unused variable
Fix symbol table read

This was broken beyond belief, from cosmetic flaws such as missing line break
after an error message or unreadable numeric constants, through missing exit(1)
after failed sanity check, a missing out-of-memory check to serious issues such
as read() without checking the error value resulting in short reads and missing
nul termination causing an out-of-bounds read during symbol lookup.

Unbelievable.
Adjust for structured logging

Also removes skiptoline -- it is no longer possible to simply count lines.
Moreover it did not support wrap arounds properly.
An extra sanity check