Misc refactor

Details are in the commit messages.

I had been meaning to write bindings to termbox for a long time. I guess I'll just this this one :).