Fix bug which caused block() to not actually block.

wakeup_time = -1 ==> wakeup_time is not consulted
wakeup_time =  0 ==> thread woken up when clock is >= 0 (i.e. always)
Merge branch 'master' into schedcookie
add abssleep_real() (for pthread_cond_timedwait)