Newmenus: Execute menu callback when old-style menu overwrites new menu

show_menu simply resets CPlayer::newmenu. The menu callback is never fired and the plugin never informed that the menu has been closed. This can result in leaking menu handles. Using "menuselect 10" on the client is not an appropriate solution because it is possible to construct newmenus that contain 10 valid items.
Newmenus: Add MENU_TIMEOUT status code and pass it where necessary
Newmenus: Fire MENU_TIMEOUT on menuselect client command
Newmenus: Add Menu::Close to remove a bunch of redundant code
Newmenus: Use Menu::Close everywhere
Newmenus: get_user_menu should also handle newmenu timeouts properly
Newmenus: Add necessary API changes for newmenu timeouts
Newmenus: Add MEXIT_FORCE for proper exit button on non-paginated menus
Newmenus: Fix unsigned underflow on "end" variable
Merge pull request #20 from Nextra/mexit

Newmenus: Add MEXIT_FORCE and fix possible crash
Update checkout-deps.sh.
Newmenus: Update MENU_TIMEOUT doc
Newmenus: Add get_menu_by_id and use it everywhere
Newmenus: Fix typo in error message
Merge pull request #21 from Nextra/newmenus

Newmenus: Add menu timeouts (+ extra bugfix)
Fix an unicode issue with amx_SetStringOld.
Merge pull request #22 from Arkshine/fix-unicode-issuee

Fix an unicode issue with amx_SetStringOld.