tests: Add testcase for read by length past EOF.

Currently broken for unicode input streams.
Allow DFU_UTIL to be overridden from the environment.
Deal with reading a buffer less than what was allocated.

With this fix, file_long_read now passes.
Merge pull request #767 from dhylands/fix-short-read

Deal with reading a buffer less than what was allocated.
Merge pull request #746 from blmorris/master

Enable 16-bit memory addresses for i2c.mem_read and i2c_mem_write
Merge pull request #766 from dhylands/allow-dfu-override

Allow DFU_UTIL to be overridden from the environment.