Some projects implements their own mechanism to parse dict values from
list because they use different separators between key and value.
For example, nova provides the [libvirt] disk_cachemode option, and
this option takes a value written in the following format.
[libvirt]
disk_cachemode=key1=value1,key2=value2
Introduce the new key_value_separator parameter to allow using
a different separator, so that DictOpt can be used for such usage.
Change-Id: Iec977e21088b1ced9ad0df05638a459af8cdda2a