In the course of #5387, this patch changes the menu button code to use object orientation and thus removes the last remains of menu.js that weren't OOP.
- It removes the **duplication and hardcoding of XML*, similar to rP22854 / D2240 and allows modders to insert a button by adding a single class.
- Tooltips for menu buttons that can be triggered with hotkeys was added.
- Small performance improvement, subscribing the onTick function only while animating the menu. As discovered by nani few days ago, the event handler currently can't be deleted due to the JSClass not having the deleter function (broken since ever).