Update Timeout semantics to use None to imply "never", and to use a sentinel object for default timeouts
Change Timeout module path
Fix regressions and get performance back up