Allow Ghost to utilize 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.