more progress on the bytecode output

- impl'd a bunch of emit() methods
- made IRByteCodeCompiler into an instance
- first stab at bookkeeping of tempvars and lvars