RFC. As per
https://discord.com/channels/188630481301012481/188630652340404224/1291346164976980009.
The diff is extremely dumb but I tried a few smarter methods and they're
either not fully correct or don't work. Primary problem is that menu
items are mutable externally and there's no hook provided by the
framework to know that items changed. One could probably be made but I'd
prefer that this change be examined visually first before I engage in
too much ceremony and start changing framework around.
It didn't ever really make sense for it to be sharing the implementation
details of that (e.g. colouring of primary/dangerous actions), and with
the hotkey display things got outright hacky, so I'm decoupling it
entirely.