Custom Fps Limiter

First time contributing. Set FPS limit on second page of graphics
settings. Press Tab key or on 360 controller, press left stick to toggle
between 3 states.
Fixed Config saving

Fps limit now saves in configuration. It can also be edited there to
allow for any value of fps.
Implement mipmap clut sharing/not sharing.

It was kinda already there, probably from JPCSP.  Not well tested,
but this is what JPCSP does and it makes sense.
Move the font clut opt check to clut load.

And remove the report for mipmap sharing, seems to work...
Don't double alpha when alphablend is disabled.

Probably doesn't affect much.
Add reporting for unsupported GE commands.

And clean up some disasm for a couple others.
Defer palette conversion after clut load.

Because the format can easily be specified afterward.
Only report these once to avoid spam.
Merge pull request #1787 from unknownbrackets/gpu-minor

Misc. GE changes and CLUT fix
Don't use ivec in the fragment shader.

Attempt at #1777.  Needs the + 0.5 to round properly on mobile.
Merge pull request #1789 from unknownbrackets/gpu-minor

Don't use ivec in the fragment shader.
Keep track of disc0:/ vs. disc0: in path parsing.

The difference matters and was getting lost.
Properly savestate umd0: references.
Remove a duplicate syscall entry.
Fail with an error in sceIoChdir for invalid dev.
Fail if the cwd is too long as well.
Return an error when there's no async op.

And generally improve error codes for async io poll/wait funcs.

Fixes #1790.
Fix crashes / bad errors when loading a file fails.
Merge pull request #1791 from unknownbrackets/io-async

Correct errors for async io, other io fixes
Merge pull request #1792 from unknownbrackets/windows-ui

Fix crashes / bad errors when loading a file fails