Bug 1054274 - Split out browser overflow menu into shared component. r=benfrancis

This makes sure that contents of the button doesn't swallow events (though this may not be necessary given it's a button and not just a div now... I'll find out) - the transition is for when you disable a button so that the contents gets greyed out.