numerous changes and global cross-browser tweaks