DRY up preference loading in Discourse.User#save