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.
Normally I name function variables as if they were just a function. So ReadValues() would be delegating work to ReadValue(), thus readValue(). I think ReadValues makes sense next to ReadKeys, whereas ReadFunction would seem a bit vague, nawmsaiyan?