Miscellaneous cleanup/refactoring in resolve and syntax::ext
#38171
jseyfried:cleanup% was force-pushed and no longer has any new commits.
Pushing new commits will allow the pull request to be re-opened.