added variable-unpacking, codegen wip