Make sure that the decoder always returns an EOF at the end of the stream.

Due to a logic bug, the Simulink Decoder would throw RuntimeExceptions instead
of EOFExceptions after the first EOF.  Fix this by handling the state after
the first EOF explicitly.
Fix SimulinkDecoder's read function to comply with the InputStream contract.

When out of bytes, don't return EOF.  Instead, return -1 as specified in the
InputStream contract.  Otherwise MatFileReader is unable to use the decoder,
as expected.
Make sure that parsing via streams works the same as by files.

Extract the common code for parsing the actual buffers into a common function,
to ensure MCOS data is properly parsed.  Also add a test exercising this
behaviour.
Update the tests around the TET table.

Add some extra tests to the TET table tests, to make sure things are being
read in correctly.

Also, fix up the Simulink Encoding parser tests to better check that everything
is working correctly, and all byte arrays are the same size.
Remove useless debug output.

Some debug output slipped through.  Remove it to clean up stdout.