An HTTP client