This allows for adding more advanced tests, for example tests that use the compiler package so that test sources can be written in Go instead of LLVM IR.
This moves the transformation pass to the right location, and adds tests to see that it actually works correctly.