Major rearchitecting, make it work again.

So, it turns out that the `ptrace` API doesn't support threads. Who
knew. That means that before, either I was insanely lucky or my
system was in a funny state which prevented go from using multiple
operating system threads.

Unfortunately, `PtraceDetach` also resumes execution and doesn't
provide a mechanism for doing so with SIGSTOP. This means we'll
have to forego goroutines for the time being.