add gett{ab,up}le and loadnil ops, empty arm jit

but we cannot it parse it yet.
gettable should be used as in lua with t[key]
but arrays (tuple) syntax is just t(index), which is not seperatable from
messages at compile-time. which is bad because tuple access needs to be
faster than hash table access, and can be jit optimized much easier.

loadnil (from lua 5.1) is not used in practice, so I'll remove it later.
tailcall is still just an unused dummy.
remove LOADNIL, not used anywhere

tested all examples and test cases
gettable as single op

parsed into 2 cases: hash[var] or hash["const"]
   (value (lick (msg ("hash") list (lick (value ("imm")))))
or (value (lick (msg ("hash") list (lick ("imm"))))

Still WIP

TODO: we really want fast arrays accesses, not hashes. Hashes are fine
as method call, but gettuple could be better jitted.
So rather change arr(x) => arr[x] and stay with hash at()?
This would be a step away from lua (h[] for hashes)
and a step nearer to perl (a[] for arrays)
array[key] => gettuple, not gettable

we want faster tuples (arrays), not tables (hashes),
because we can optimize them more easily.
WIP: the first reg for loadpn of the tuple is still wrong.
faster gettuple, support also gettable with imm strings ["key"]

TODO: jit for gettuple (wrong type), and the optimization for
unchecked fast tuple access (see JIT_UNCHECKED_TUPLE)

broke test/flow/return.pn
gettuple jit: oops, index already integer
WIP gettuple jit fast version

test/flow/return.pn stil broken also
and the test/lists/gettuple.pn jit for the constant part
fix return regression: after nil or other keywords check utfw words

and not just starting chars, to parse vars like nil1, nil2 as such. and not
seperate it into a message of nil 1
add DBG_CHECK_TUPLE, fix gettuple imm num argument

but we still have a broken self argument in op.a
gettuple jit: simplify and fix

harmonize 32+64 bit. JIT_UNCHECKED_TUPLE works now, but
op.a for IMM is still wrong, in both versions
gettuple jit: disable JIT_UNCHECKED_TUPLE

it does not work.
align comments
gettuple: use ASM_TPL_IMM to encode int<1024 and use >1024 for reg indices

so we have 0-1023 for direct indices and 1024-2055 for regs.
add better opcode descriptions in vm.c
gettuple is now only for fast unchecked PNTuple access, no bounds checks
no negative indices.
Improve potion_x86_debug: add rcx, rdx.
vm: mark reg+1 as reserved when gettuple needs reg+1.
jit still broken for the prev. getlocal (wrong %rax)
gettuple: improve ASM_TPL_IMM jit. just wrong rdx index now, but correct tuple in rax

X86_DEBUG: nicer stack printout with 0x
gettuple: fix indirect jit access. parse -1 as number literal.

needed to convert the index in PN to int in %rdx.
add - to dec parser and handle it in PN_ATOI.