Ignore files produced during perf test
Introduced many new “callbacks” in HttpFilters.

The idea is to have a deep understanding of the
different steps an HttpRequest goes through.

This enables to measure stuff like:
- time took for DNS resolution
- time took to send data down the wire for the HttpRequest
- time took to receive data from the wire for the HttpResponse

and so on…
Some method renaming for consistency.
More docs and test for new HttpFilters additions.
Correcting/Optimizing imports.

While in the process of testing stuff out I
forgot to do an “optimise imports” before submitting
the PR.
Stripping HOST from Connect even in transparent mode.

Some websites (i.e. "nytimes.com") seem to have issues loading when using
LittleProxy in transparent mode.

The reason is down to the "URI" header containing the full URL (instead of just
the path) when using in Transparent mode.
While most webservers online are OK with that, some old servers seem to respond
with malformed "Location" headers when the Proxy is behaving in
"transparent mode" and it doesn't strip the Host from the URI.

So we are going to always strip the Host from the URI (transparent or not) and
ensure the Host header is present (added if missing).

This should ensure preservetion of correct behaviour with old clients and
old servers.