cli: make config based args available during early setup (#3255)
cli: make config based args available during early setup (#3255)

As arguments can be loaded from a config file these need to be loaded as
soon as possible otherwise some options will not have the desired
effect. For example, `quiet` can be specified in `.streamlinkrc`,
however it will not take effect. With this change the default config
args are loaded earlier, however plugin specific config files are
still loaded later.

Options that will take effect from the config file now include:
 - `loglevel`
 - `json`
 - `stream_url`
 - `subprocess-cmdline`
 - `quiet`
 - `stdout`
 - `output`
 - `record-and-pipe`
 - `plugins-dir`

The plugin specific config option behaviour remains unchanged, and
`loglevel` is the only option that is affected.
streamlink/streamlink,beardypig/streamlink,chhe/streamlink,beardypig/streamlink,melmorabity/streamlink,streamlink/streamlink,melmorabity/streamlink,bastimeyer/streamlink,bastimeyer/streamlink,chhe/streamlink,gravyboat/streamlink,gravyboat/streamlink