Description
Currently it's really hard for users and even developers to know what goes in the config file. Like which parameters are being used and which not.
Hence, we need to define a schema so that the available keys and their meanings can be understood.
In addition, if we can unify especially the common things in the loaders to similar keys, that'd be ideal. One example is the channel list (group names and keys) and aliases that differ in all loaders.
Once we have a schema, which we can define using jsonschema (or others), we can validate everytime during parsing config if it is valid.
Problems I see if we do this: The older config files might become unusable so a way has to be figured on how to work with that. Or maybe we just introduce the newer config file schema in v1.0.0