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
Bugfix: isomorphism check was not strict enough

Some non-isomorphic graphs were erroneously considered to be isomorphic. It could
happen that two different nodes were not compared as they've already been marked as
visited by some other comparisons. With this commit, it is ensured that every edge
in the irgs will be visited.