Cleanup and update of `gamemode` commands

Updated gamemode console and in-game commands to behave in a more uniform manner, centralized into gm.lua to facilitate reuse of common code, updated Info.lua and README.md with additional information.
Why? I also use this method (kinda). Is it faster? Why does NoCaseCompare return a int value anyway?