changed config-reader to use yield instead of temporary list