Only set DisplayName and AvatarURL if empty
Created by: flying-robot
If a customer signed in via multiple code hosts with different display names and avatars, their Sourcegraph experience would "flip-flop" between the values as they logged in via the different hosts. This changes that behavior so that updates will only be made to the underlying data when it's absent. Otherwise the first-encountered values will be used (but customers can always manually update the display name and avatar URL to whatever they choose).
fixes https://github.com/sourcegraph/sourcegraph/issues/17086