Partial fix for usage in OnGameModeExit

Now dependent on YSI\y_hooks (this can be changed however)

This change is due to a small problem in the implementation that results
in "modio_finalise_write" not being called if "modio_push" is ever used
in OnGameModeExit/OnFilterScriptExit because the mode unloads before the
timer can be called after the callback. The current fix for this is to
just save the entire file on every call of "modio_push" if the mode is
exiting (this required a call of OnGameMode/FilterScriptExit BEFORE it's
used anywhere in the script in order for the function to know it must
force a save on every push)

The ability to force a write has also been added through an optional
parameter in "modio_push".

The dependency for YSI\y_hooks will be removed and made optional as well
as conditional compilation for ALS hooks of OnGameMode/FilterScriptExit.

Made functions stock so no warnings appear in an empty compilation.