Refactor libinibin's InibinFile and Loader.

Should probably write a test before merging, because I don't know if my changes broke anything and there's a high chance I've maybe made an off-by-one error or something of the like.
I would rename this to something like 'readFunction'