Hmm… internal pull-up didn't do what I expected, so I replaced it with an external pull down.  Works better now.
Debugging changes and WIP for button logic.  It builds, but untested.