ImageIO Format TIFF: use scanline-based I/O

Also do check for TIFFWriteScanline return code and abort on first error.

As for TIFFTAG_ROWSPERSTRIP: (from specs)
Choose RowsPerStrip such that each strip is about 8K bytes, even if the data is not compressed, since it makes buffering simpler for readers. The 8K value is fairly arbitrary, but seems to work well.
That means,
	StripSize = 8 Kbyte
	RowSize = WIDTH pixels * 3 * X bit/pixel
	RowsPerStrip = roundf(StripSize / RowSize)
And in 99%, RowsPerStrip is 1.