Make condition function return path as expected by lib.config
When processing exception from _load do not allow overwriting it

If `self.loaded.pop` raises KeyError then this KeyError will be logged, not the 
initial exception from `self._load`.
Merge branch 'fix-reloading' into develop