Cleanup handling of config channels in RunSyncLoop

Pass a map of channels instead of a bunch of vars.

My go concurrency-foo is currently weak, so please take a close look:)
(Reminder to myself to check later if this can be a 'chan<-'.)