Add toggle mode for HTTP Nowhere

Many people, including the celebrated Jimmy Wales, have asked us to include an "HTTP Nowhere" mode in HTTPS Everywhere. Inspired by Chris Wilper's HTTP Nowhere add-on v1.0 (https://addons.mozilla.org/en-us/firefox/addon/http-nowhere/, licenced GPLv3), I added this feature.

Currently it does this by changing Firefox's default HTTP proxy (accessible in about:preferences) to a null proxy (`localhost:4`) while enabled.

TODOs:
* Probably better to register our own proxy filter for HTTP requests instead of changing the default HTTP proxy.
* Replace the confusing page that says "The proxy server is refusing connections" with a custom page telling the user that they are unable to load a site because HTTP Nowhere is active. I have no idea how to modify Firefox's internal error pages; if this is impossible, maybe we need to use an nsIProtocolHandler for "http://" instead of proxying.

UPDATE: Am leaning toward rewriting this as an HTTP/FTP/etc. protocol handler after realizing that messing with proxy settings causes the TorButton UI to look very alarming if you're using Tor Browser.
This function is called from onChannelRedirect, but without a value for httpNowhereEnabled... I'm not sure if that path is still needed, but I think we should populate this argument correctly there.