Fix bug #7300 (Prefs never saved again after opening ancestor folder of user prefs.json)

Fix bug #7300 -- ensure that FileSystem always knows we've read the JSON file before we try to write to it. We don't want to enable the 'blind' flag since it will mean we virtually always overwrite external changes to the prefs file, and we don't want to start using file watchers to observe external changes on the fly since we haven't yet deeply tested having multiple watch roots active at once (see #7375).

Also:
- Rename confusing "filename" vars in PreferencesBase
- Fix JSLint errors in ProjectManager from #7026