Bug 1018240 - Part 1: Reinitialize nsSearchService when the browser locale changes. r=adw, a=sledru

This patch makes nsSearchService watch for changes in the
general.useragent.locale pref, asynchronously reiniting itself when the pref
changes.

reinit-complete and reinit-failed events are broadcast on the usual search
service topic.
Bug 1018240 - Part 2: Invalidate BrowserSearch engine list when locale has changed. r=bnicholson, a=sledru
Bug 1038695 - Show all cookies in Net Monitor, not just first. r=vporof, a=sledru
Bug 1042984 - Add extensive logging and descriptive crash data for library load errors. r=mfinkle, a=sledru
Bug 1042929 - Don't throw Errors from JSONObject parsing problems. r=mcomella, a=sledru
Bug 1036036 - Stop leaking docshells in Session Store tests. r=ttaubert, a=test-only

When adding a SHistoryListener in the Session Store test frame script
we were creating an intermediate global variable that was rooting the
docshell. This prevented things from being GC'd properly.

I've removed this intermediate variable and we should no longer keep
the docshell alive. This will probably also fix Bug 1036031.
Bug 1043627 - Only re-initialize nsSearchService on locale change in Fennec. r=adw, a=sledru