Provide coroutine context swapping routine for i386 as well

The uClibc build I'm using for a project  doesn't provide ucontext routines,
so include a version similar to what is found in glibc (we might want to
save floating point registers, though).