Make `tcCheckSatisfiability` incremental (#18645)
By taking and returning an inert set (
TcS session can then pick up where a prior session left with
I also had to extract the defn
DsM into its own module
GHC.HsToCore.Types (see discussion below or the commit message), which I consider a good refactoring anyway.