promise: don't create the ConditionVariable unless needed
future: don't create the ConditionVariable unless needed
channel: don't create the ConditionVariable unless needed
delay: space cleanup
Bump version