x86: fixes 32 bit trap-syscalls

Broken since dd07360f, since our sysenter and trap methods expect their args in
different registers (on 32 bit).
Reflects symbol table into the kernel

The symbol table is processed and dumped into a C file, which gets compiled
into the kernel.  It's similar to Linux's kallsyms, just not as efficient.  It
allows us to map to and from addresses and symbols (char *s).
Debug tools use the symbol table

Including kfunc (now available for riscv!), x86_64 backtrace, and spinlock
debug.

This also allows us to clean up the headers a bit (remove eipdebuginfo, make
spinlock debug arch independent).