Make Hooks overridable by compiler plugins
We do so with a new field in the
Plugin data type, which lets plugin authors
Hooks -> Hooks function that then gets applied to the hooks already
present in the
DynFlags. If several plugins override the hooks, we compose
all the corresponding
Hooks -> Hooks functions.
The patch also comes with a test that overrides the Meta hook,
0 for all expression splices instead of running TH to "compute"
the actual value.