No notion of vcore context in the alarm threads

Not sure how this crept in there in the first place...
I need to set the sigmask explicitly.

In the old way, it just got the mask of whatever was set when the
vcore_entry_context was created.  This way avoids a full context switch
anyway...
Explicitly set our tls_desc in the signal handler

This was a beast to track down, but linux will install the tls_desc of
whatever it last saw as your tls desc when you entered the kernel on its
scheduling boundary.  We want it to be whatever is current though, so we
set it manually.