Don't use shutdown() to stop http servers.
* bzrlib/tests/http_server.py:
(TestingHTTPServerMixin.tearDown): Avoid using shutdown() to
properly stop the listening server. Use a real connexion instead
relying on callers to ensure the server will not listen anymore
after that last connection.
(HttpServer._http_start): Once we stop running, we still need to
close the listening socket.
(HttpServer.tearDown): Join the server thread to avoid leaks.