Fix language switcher persistence to work when no custom file extension
mappings are set yet - don't leave default value of pref undefined.

Clarify two other cases of definePreference() calls where we really *do*
want the default value to be undefined by passing it explicitly.

Also: add TODOs for unused Session arg in JS code hints.