This enables the SpecConst transformation to work
across modules. I mostly copied and modified code from the normal specialiser
and it seems to work. Here to validate and get feedback.
TODO:
- Work out what SpecConstr actually does
- Add a test
- Clean up the mostly copied implementation