Fix timeout sleep handling to track time more accurately
Added JavaDoc explaining the details of VerificationWithTimeout
Minor tidyup & improvement of timeout() tests