This patch adds support for using the steady (monotonic) clock when
waiting on a condition variable with a timeout. This feature is
currently implemented for POSIX threads. The patch generalizes it to
be usable with an external threading library by adding a new
function __libcpp_condvar_steady_timedwait.
External threading layer implementors should define
_LIBCPP_HAS_COND_STEADY_TIMEDWAIT in their __external_threading
header and implement the __libcpp_condvar_steady_timedwait function
to use the feature.