[New Feature] Integer scaling and super resolution
Former issue #483 .
This PR added a feature that making it able to do integer scaling, to achieve "pixel perfect". When option Settings > Video Integer Scaling is on, the core renderer detects the window size and scale the original video to the max size while keeping pixel-perfect. An entry added in settings.

This pull request introduces 1 alert when merging 204b64a75e39324d850ca014f3f33eb6333924f3 into 500c8bad7c5b437119a4a29087f4dbf6644a3e48 - view on LGTM.com
new alerts:
- 1 for Useless assignment to local variable
Update: Super resolution
Makes the video horizontally stretched when Video Super Resolution enabled. Can be affected by Video Integer Scaling. The menu will have a different behavior to work properly under super resolutions.

Update: Added support to unicode font. A unifont.png need to be placed in assets directory. To generate unifont.png, fetch "Plane 0 Chart" in BMP format from http://unifoundry.com/unifont/index.html, then make it reversed and saved as PNG.

Update: Refactorred Super Resolution to Aspect Correction. Once set to the aspect ratio of your monitor, it'll always keep the correct video aspect ratio, despite what resolution is in use.
Update: Nowadays people are usually not willing to change their resolution once a neat one has been set, and the largest resolution is not always best (especially for CRTs). This commit makes Ludo use current desktop resolution when entering full-screen mode.
@donmor That last commit gold ⭐ Ludo changes the resolution from 1920x1080 to 1920x1200 when connected to my capture card, which introduces screen clipping and refresh rate desync. Thanks for the patch.
But this last commit breaks full screen on OSX
But this last commit breaks full screen on OSX
Hmmmmmm... Maybe a macro.could help (does go have macros?) or a statement block?
I think it's also likely to break fullscreen elsewhere. If I recall correctly API of GLFW wants a monitor to be passed to achieve full screen.
Gosh I've not even had a mac and my windows pc's wonky :( Better to make the last patch a linux-only feature, until I have a mac
Finally I managed to fix the fullscreen mode on linux, and'll test on windows later. So does anyone have a mac here?
Okay please wait for a while before I put some comments in code :)
BTW I think it'd be better to use unicode font glyph instead ascii, as the first step to making i18n stuff.