So, the dictionary setup was used because we had multiple sources and wanted to consolidate the code for fetching from those sources. Most of the code was the same except for various key fields.

However, now that we only have one source, it's no longer necessary to add this layer of indirection — it makes the code slightly harder to read. Basically, if one were to write this code from scratch, one probably wouldn't add this unnecessary generalization.

It's good to try to keep code simple and concise. A general rule is that code will be read many more times than it is written.

If you don't mind dispensing with `source`, that'd be great! :)

Sorry about any confusion earlier.