scriptindex: Fix weird error cases
In four cases while handling input data (two cases of bad hex data fed
to `hextobin`, an input data line without a `=`, and `load` failing to
load the specified file) we'd emit a diagnostic that was labelled as an
"error" but really it was handled as a warning as we kept reading input
and the "error" didn't affect the exit status.
It doesn't seem to really make sense to continue in any of these
cases so we now exit with non-zero status right away.
(cherry picked from commit
5a6098d4cc37e172753d4fd2f2f0637f7e8f3009)