Rehabilitated the menu.

Collision detection (for touches, that is) now traverses the widgets in a hierarchy instead of polling all of them. I don't think there's a meaningful performance benefit. I just want them to act like they're layered the way they appear to be.