Allow separate threads to wait on async io.
Wake up waiting threads on file delete.
Refactor wait verification a bit in kernel waits.
Use a different wait type for async io.
Add io async wait callback handlers.
Merge pull request #3675 from unknownbrackets/io-async

Improve io async waits, callback handlers
Add optional "DevMenu" in-game button for quick access to things like log settings
Overhaul the Win32 UI. New things include:

-File -> Savestate Slot: Lets the user pick the savestate slot to be used.
-Game Settings -> More Settings...: Opens the main settings screen from anywhere.
-Game Settings -> Control Mapping...: Opens the key mapping screen from anywhere.
-Infrequently changed options were removed.
-Organised menus; nothing is out of place anymore.
-Simplified menus: as some options were removed or moved, it's easier to find what you're looking for, now.