Make all uthread ops interrupt safe by default.

Previously the only interrupts we had were the alarms used by preemptive
schedulers.  This meant it didn't make sense to incurr the overhead of
enabling/disabling uthread interrupts on every yield/init, etc. call for
schedulers that didn't need it. With the change a few weeks ago to leverage
the interrupt mechanism for syscall interpositioning, it is now necessary to
handle all of this logic internal to the parlib library.
Add calls for disable/enable notifs and move to event code
Overload backing thread to perform async syscalls

Previously, our async syscall mechanism relied on pulling a pthread from
a pthread pool to run our async syscalls.  Since every thread lready has
a backing pthread now though, we overload him to now perform the task of doing
these syscalls instead of allocating a whole new thread just for that purpose.