If I was ever to make my own rebinding screen, there's a lot of features I want to add to it because rebinding screens are something I feel very strongly about, but it would probably take me months to make one good enough. Maybe one of these days I'll do it. In real life though, any sufficiently complex game would just be using Rewired which comes with a rebinding screen.