disasm:
 find a way to recognize non-returning subfunction (eg thunk_exit)
 DecodedData (dword, string, array, structs? ...)
 make exe.decode generate DecodedData ? (for elf symbols, import names etc)
 handle function-local stack space (esp+XX) -> private, nobacktrace
 handle function-local labels (also rename local stack vars offsets)
 forward register tracking ? with weak values ?
 path-specific backtracking ( foo: call a ; a: jmp retloc ; bar: call b ; b: jmp retloc ; retloc: ret ; call foo ; ret : last ret trackback should only reach a:)
 function signatures (a la FLIRT?)

decompiler: make one
ia32: emu fpu
encode: SplitReloc for pseudo-instrs (mips li => reloc high :a16 + reloc low :a16), use Reloc.encode(edata, off) or sumthin for edata.fixup
mips: find a way to have a 'li' instruction that resolve as 'loadlow' or 'loadhigh+orlow'
optimizer/deoptimizer (asm/dasm): reorder instructions
compile: optimize (jmp -> jmp, non-volatile vars, ..), support intrinsics?
debug: unify windows/linux API, support hw dbg registers uses (bpx/r/w..)
gui: debugger, hexedit, C code navigation
elf: symbol versions
