Two days ago, I began hacking on my window manager again. (I abandoned that project in mid 2014.) This time, I chose a different approach, kept things a little simpler, and went for a non-reparenting WM. This looks more promising than my previous attempt.