Rewrite Pass pipeline for polli

We perform optimization a lot more carefully now than before.

Prepare optimized main module:
 * Run Polly before everything else (with polly-canonicalize)
 * Run the chosen optimization level _afterwards_, because polly gets
   confused as soon as we mix it too much with O3 passes.