I used to do the same (self document in an org file). With Emacs, though, I've found creating hydras[1] to be a better approach. It looks a lot more complicated than it is. The first time I wrote hydras, it was hard. After that, it's been trivial.
Of course, magit like menus are mildly superior to hydras, but I don't know if they are as easy to generate.