Lots of refactoring now that all the buttons are hooked up on the physical device.