Add button_up events

Modified logic to send event on button change, selecting button_* or
button_up_* depending on state.  Previous button events are only sent
on down event, and only button_up_* events are sent when the button is
released.