yaml

This changes the format of the required configuration file to yaml, to stay in line with the other conf files. The data inside is the same, but in yaml.
No, we don't. If the values are not specified, some of these might be None. 
Before the PR : If the configuration file was not complete, the default url would have been
http://:@localhost:5984
which would not work.
Now it would be 
http://:@:
which is not better, but at least, there is no hardcoded value for any of the 4 required parameters. 

The idea behind that is that if one of the parameters is missing, it will be easier to troubleshoot, because the code does not infer parameters. The very point of having a config file is to avoid having hardcoded parameters, right ?