This patch makes sure that when you have a tab open in a private window,
we would never switch to it from either a private or non-private window.
Also, this disabled switching to tabs inside private windows.
This patch uses the autocompletesearchparam attribute to convey whether
the autocomplete search is coming from a private window, to disable
finding open pages in nsPlacesAutoComplete. It also changes the
behavior of switchToTabHavingURI to make sure that switch to tab
actually fails if somehow attempted (this is used in the test.) It also
prevents pages opened in a private window to be registered with
nsPlacesAutoComplete as open pages, in order to make sure that those
pages do not appear as switch to tab entries in the autocomplete list
for other windows.
The test for this patch is based on browser_bug555767.js, and tests all
of the four possible interactions here.