Eta-expand the Simplifier monad

This patch eta-expands the Simplifier's monad, using the method
explained in GHC.Core.Unify Note [The one-shot state monad trick].
It's part of the exta-expansion programme in #18202.

It's a tiny patch, but is worth a 1-2% reduction in bytes-allocated
by the compiler.  Here's the list, based on the compiler-performance
tests in perf/compiler:

                    Reduction in bytes allocated
   T10858(normal)      -0.7%
   T12425(optasm)      -1.3%
   T13056(optasm)      -1.8%
   T14683(normal)      -1.1%
   T15164(normal)      -1.3%
   T15630(normal)      -1.4%
   T17516(normal)      -2.3%
   T18282(normal)      -1.6%
   T18304(normal)      -0.8%
   T1969(normal)       -0.6%
   T4801(normal)       -0.8%
   T5321FD(normal)     -0.7%
   T5321Fun(normal)    -0.5%
   T5642(normal)       -0.9%
   T6048(optasm)       -1.1%
   T9020(optasm)       -2.7%
   T9233(normal)       -0.7%
   T9675(optasm)       -0.5%
   T9961(normal)       -2.9%
   WWRec(normal)       -1.2%

Metric Decrease:
    T12425
    T9020
    T9961
23 jobs for master
Status Job ID Name Coverage
  Lint
canceled #404032
lint
lint-linters

canceled #404035
lint allowed to fail
lint-submods

canceled #404036
lint
lint-submods-branch

canceled #404033
lint
lint-testsuite

canceled #404034
lint
typecheck-testsuite

 
  Quick Build
canceled #404037
x86_64-linux
hadrian-ghc-in-ghci

 
  Build
canceled #404038
x86_64-linux
validate-x86_64-linux-deb9-hadrian

 
  Full Build
canceled #404041
aarch64-linux allowed to fail
validate-aarch64-linux-deb9

canceled #404042
armv7-linux allowed to fail
validate-armv7-linux-deb9

canceled #404043
x86_64-linux
validate-i386-linux-deb9

canceled #404040
x86_64-darwin
validate-x86_64-darwin

canceled #404044
x86_64-linux
validate-x86_64-linux-deb9-debug

canceled #404046
x86_64-linux
validate-x86_64-linux-deb9-dwarf

canceled #404045
x86_64-linux
validate-x86_64-linux-deb9-integer-simple

canceled #404039
x86_64-linux
validate-x86_64-linux-deb9-unreg-hadrian

canceled #404047
x86_64-linux
validate-x86_64-linux-fedora27

canceled #404049
new-x86_64-windows test allowed to fail
validate-x86_64-windows

canceled #404048
new-x86_64-windows test allowed to fail
validate-x86_64-windows-hadrian

 
  Cleanup
canceled #404050
x86_64-darwin
cleanup-darwin

 
  Packaging
canceled #404051
x86_64-linux allowed to fail
doc-tarball

 
  Testing
canceled #404052
x86_64-linux allowed to fail manual
hackage

canceled #404053
x86_64-linux
perf-nofib

 
  Deploy
canceled #404054
x86_64-linux allowed to fail
pages