(REVIEW ONLY) Expand options for preferences lookups

This will ultimately fix #6578, but not yet.

[ ] Make current tests pass
[ ] Allow lookups for specific files
[ ] Provide notifications that apply for specific contexts
[ ] Fix the existing calls into the preferences system APIs (such as the ones noted in #6578)

cc @busykai @peterflynn