avoid using closures in rejiggered methods (fixes #365)

fixes regression dating to bbafc96

I should have seen this coming. the bad commit uses for comprehensions
on Option in rejiggered methods. with `-Yclosure-elim` it's
fine. without closure elimination, the body of the for ends up in an
inner class, which naturally confused the generator
silly me. missing piece of last commit
disable -optimize, at least for now

it slows down compiles (2:45 vs. 2:10), tends to be buggy (SI-7524,
SI-7529, others), and I never did any benchmarking to see if actually
speeds up running models.

this could certainly be revisited in the future, but for now, this
is how I'm leaning.
Merge remote-tracking branch 'origin/master' into core

Conflicts:
	test/benchdumps/GridWalk.txt
Merge remote-tracking branch 'origin/core' into headless

Conflicts:
	build.sbt