Merge pull request #66 from hawkw/master

Resync codegen from master
Make smaller tabs in output bytecode
Add return type to methods
Add source file directive so Jasmin can make nice debugging information
Implemented calls to (static, local) functions
 + `function3.decaf` works
 + `function1.decaf`, `function2.decaf`, `function4.decaf`, `function6.decaf` all are broken because of The Terrible AST Problem (#64)
 + `function5.decaf` ...doesn't exist.
Implement calls to static functions from other classes (mostly)
Implement calls to static functions from other classes (mostly)
Merge remote-tracking branch 'origin/codegen' into codegen
Added ReadInteger()
Added a working ReadInteger implementation.
+ This requires a fake method to be inserted at the top of every Decaf class since the Java std lib is sufficiently braindead and Decaf doesn't have a linker.
+ [x] `io1.decaf` works
+ [x] `io3.decaf` works
Fix "unreachable code" Scalac warning
Fix bug where ReadLine() had the wrong type annotation (Closes #63)
+ [x] `io2.decaf` compiles
Merge pull request #67 from hawkw/codegen

Merge in working I/O