tests: update test data and fix/enhance test.sh
lzjb_util: add error handling for calls to lzjb_compress
lzjb: error handling, fix seq bug, refactor compression loop

Error handling has changed from a hard exit to a stderr message
and the return of a negative value. This may be further modified
in the future to allow for more intelligent error numbers. For now
the goal of returning an error rather than killing the calling
program has been met.

Sequential compression had a subtle but nasty bug where a match
that was successfully compressed would not terminate the function.
A test case was found where data compressed with Seq(32) was then
matching as a Seq(8) also, causing compression of data that had
already been processed.

The main compressor loop was being performed in two places. The
compressor loop was rewritten to cleanly handle error propagation;
rather than copy and paste the new code with minor modifications,
the compressor loop has been extracted and placed into its own
function, resulting in significantly cleaner code.