Fix LittleEndianDataInputStream.readFully

LittleEndianDataInputStream.readFully was throwing EOFExceptions before
the EOF had been reached, as read() may return fewer than the requested
number of bytes even when there are more bytes remaining (the only
requirement is that at least one byte is returned if not at EOF).