Added support for statically including libraries
Refactored the regression test suite to be a little nicer.
Renamed "java" package to "runtime"
Moved optimizations into the "main" package
Cleaned up some warnings
Replaced DeclaredVarInfo, a weird private struct-like thing, with
VariableDecl. 

For some reason, this wasn't done before even though it was super
simple? I remember hitting problems doing this. Maybe something got
better somewhere else.