Allow Ghost to use an HTTP proxy

Adds a new parameter to `Ghost()`, `proxy`, which defaults to `None`. If given a tuple pair, Ghost will build a `QNetworkProxy` to use when contacting the Web server, which allows for some tricky scenarios and deep testing upon network traffic.

SSL/TLS is untested, but will probably require MITM CAs.

Useful for testing with proxies such as [browsermob](https://github.com/webmetrics/browsermob-proxy).