Always assign scrutinee in CG, even for unary unboxed tuples. Fixes #213.

In some cases, the scrutinee variable actually gets used, so we need this.
In all other cases, inlining should ensure that we end up with the same code
as before.
Add flag to disable all optimizations on JS output.
Make Thunk and Eval explicit in IR.
Add test case for using an unboxed tuple scrutinee.