Fixes for Project Mario (Ini Files mostly)

*EDIT: This branch is ready to merge (again). Please see comments below.*

These fixes are necessary to compile Project Mario on Linux (and to avoid looping forever). Most of them are related to the Ini extension, which was not checking for EOF as strictly as it should have been.

Note: ini_close() in the extension was returning THE ENTIRE FILE's TEXT, which the Windows version does not. I am guessing that is not the desired behavior, so I had it return void (just like the Windows version).
If that `fopen` failed, this will fault.