Implemented constant folding for integral expressions
Bugfix: Arguments, Loads and return values must be set to Bad explicitly
FirmConstructor: Evaluate exprResultToValue calls first

* Fixes ReturnStatement generation (run/BooleanExpr.mj; getCurrentMem was called in a different block than newReturn).
* Optimizes Assignment and NewArray generation (potentially reduces unnecessary phis)
Merge pull request #209 from Kha/fix-ret

FirmConstructor: Evaluate exprResultToValue calls first
Check all graphs before code generation
Merge pull request #205 from Stoeoef/ConstantFolding

Implemented constant folding for integral expressions
Style nits
CSE
Merge pull request #207 from Kha/cse

local common subexpression elimination
Implement constant folding for boolean expressions
Update README.md build instructions
Merge pull request #211 from TehMillhouse/bragbrag

Update README.md build instructions
Merge pull request #210 from TehMillhouse/ConstantFolding

constant folding for binary expressions
Split up optimizations in order to compare optimized with unoptimized code