Cross browser extension framework