Some URLs expect a User-Agent header.

Example (version 22.2.1.3767):
```sql
SELECT * FROM url('https://api.github.com/users/clickhouse','JSONAsString');
```
Results in:
```
Code: 86. DB::Exception: Received error from remote server /users/clickhouse. HTTP status code: 403 Forbidden, body: 
Request forbidden by administrative rules. Please make sure your request has a User-Agent header (http://developer.github.com/v3/#user-agent-required). Check https://developer.github.com for other possible causes.
: While executing URL. (RECEIVED_ERROR_FROM_REMOTE_IO_SERVER) (version 22.2.1.3767)
```

Maybe it's nice to always send a header along, something like `User-Agent: ClickHouse/22.2.1.3767` ?

{
            /**
             * Add range header if we have some passed range (for disk web)
             * or if we want to retry GET request on purpose.
             */
            return read_range.begin || read_range.end || retry_with_range_header;
        }
        size_t getOffset() const
        {
            return read_range.begin + offset_from_begin_pos;
        }
        std::istream * callImpl(Poco::URI uri_, Poco::Net::HTTPResponse & response, const std::string & method_)
        {
            
            if (uri_.getPath().empty())
                uri_.setPath("/");
            Poco::Net::HTTPRequest request(method_, uri_.getPathAndQuery(), Poco::Net::HTTPRequest::HTTP_1_1);
            request.setHost(uri_.getHost()); 
            if (out_stream_callback)
                request.setChunkedTransferEncoding(true);
            for (auto & http_header_entry: http_header_entries)
                request.set(std::get<0>(http_header_entry), std::get<1>(http_header_entry));
            if (withPartialContent())
            {
                String range_header_value;