#### Is your feature request related to a problem? Please describe.
Some APIs only work if the User-Agent header is entirely omitted.  This is not currently possible in Axios in NodeJS.  #1411 opened this discussion some time back, but was closed without an actual solution other than commenting out the code which inserts the header.

#### Describe the solution you'd like
There should be a way to completely omit the U-A header if desired.  User-Agent is not a required header, and its deprecation (in favor of Client-Hints) is being actively discussed.

The simplest solution would probably to retain the current behavior if no User-Agent header is specified, but omit the header if it is explicitly provided with a falsy value (`null` and `""` both seem to clearly communicate the caller's intent not to have a value here).

#### Describe alternatives you've considered
Explicit options to disable the current behavior could work, but that seems like a less-elegant path.

#### Additional context
No.

lib/adapters/http.js
var lastRequest = res.req || req;
      
      if (res.statusCode !== 204 && lastRequest.method !== 'HEAD' && config.decompress !== false) {
        switch (res.headers['content-encoding']) {
        
        case 'gzip':
        case 'compress':
        case 'deflate':
        
          stream = stream.pipe(zlib.createUnzip());
          
          delete res.headers['content-encoding'];
          break;
        }
      }
      var response = {
        status: res.statusCode,
        statusText: res.statusMessage,
        headers: res.headers,
        config: config,
        request: lastRequest
      };
      if (config.responseType === 'stream') {
        response.data = stream;
        settle(resolve, reject, response);
      } else {
        var responseBuffer = [];
        stream.on('data', function handleStreamData(chunk) {
          responseBuffer.push(chunk);