Bugfix: validate handler was always using URL of active browser tab to update the browser button badge in that tab's window, rather than the URL of the tab (potentially in another window) for which the event was actually received. Also, getToolbarButtonByID() was returning the first instance of the button it found, which wasn't necessarily the one in the active window.

While I'm at it, have also removed "ByID" from the names of getToolBarButtonByID() and getMenuByID().