Move the vomnibar to an iframe

This PR

* moves the vomnibar to an iframe (to fix #599).
* merges #981 (to retain bookmarklet functionality, as well as to fix #968).
* tweaks #981 to fix an error in `hasChromePrefix`, where any string starting with `"about"`, `"view-source"`, "chrome-extension"` or `"data"` would be passed to the tab opening functions without being converted to a search URL.
* introduces a few hacks to keep the vomnibar test functioning as before.
I couldn't work out how to run the tests in the vomnibar iframe, so I injected the iframe script directly into the page and use this in place of the iframe's dom.

It's a hack, any idea how best to fix it?