Make stage properly capture clicks

This makes the stage capture click events instead of mouse downs. As such, it can be checked whether the user actually clicked the stage rather than a button on the controls bar (or the controls bar itself) before sending the event to the DOM.

This should fix a bunch of related issues, like #742.