Add ability to set different slot size for wfl

This will allow users of the wfl to append extra data to the end of the slot.
We use this currently in upthread-pvcq to implmenet our per vcore queues
efficiently.
Rework the signaling code to support async syscalls

There were some problems with the old way of restarting uthreads that blocked
on syscalls through the async syscall mechanism.  The problem was that the
external pthread handling the syscall would end up calling back into the
scheduler for the syscall handler, instead of one of our vcores.  This is
problematic because some schedulers and otehr code rely on being in vcore
context for this code.  To fix this, I vamped up our general event handling
mechanisms and send them to the vcores as events taht get handled at
appropriate spots in the vcore code. I still need to go back through and
protect all the uthread code, but as a first pass, everything seems to be
working.
Add some minor optimizations to the wfl
Cache align the per vcore event stuff.