Created a new Button-type object

BetterButton can be positioned like our other widgets. It's also easily
sized to fit any desired dimensions.

Propagated out to replace old ButtonEntity uses with BetterButton. Might
have missed a few, but should have gotten most of them. Will do cleanup
pass later.