documentation and docstrings. also:

I stand corrected. btn_update expands to 14570 characters. *Code
Duplication*!! McCabe's Cyclomatic Complexity checker would explode if
it analyzed this.

I have no idea how the compiler deals with this, but since we use the
Minimally Optimized one, I imagine it doesn't optimize away the
(doubtless) repetition in these 14570/5==2914 operations...