[ty] Change how global options are interpreted from LSP configuration
This is a small code change meant to implement a simpler semantic in
preparation for supporting multiple workspace folders. Previously, we
were combining global options across all workspace folders. In this
change, we now only combine global options from initialization and each
workspace folder independently. We then take the *most recent*
combination and use that for our global settings.
It's not clear that this actually changes anything in practice. I've
been unable to make VS Code send different LSP configurations for each
workspace folder within a single workspace. (It's plausible our ty VS
Code extension is actually doing this.)