windows: fix non-initialisation of Thread->wake
pthread: use volatile Thread->running; free Thread->wake when finished with it
windows: get wait/signal closer to correctness
fix race condition in unbuffered send/recv