Reduce size of Task object (#55515)
Move the registers onto the stack, so that they only are present when
the Task is actually switched out, saving memory when the Task is not
running yet or already finished. It makes this mostly just a huge
renaming job.
On Linux x86_64 this reduces it from 376 bytes to 184 bytes.
Has some additional advantages too, such as copy_stack tasks (e.g. with
always_copy_stacks) can migrate to other threads before starting if they
are not sticky.
Also fixes a variable that got mixed up by #54639 and caused
always_copy_stacks to abort, since the stack limits were wrong.
Also now fixes https://github.com/JuliaLang/julia/issues/43124, though I
am not quite confident enough in it to re-enable that test right now.