/// Insert a future and associate it with `key`. Return an error if there is already an entry for `key`.
pub fn try_insert(&mut self, key: K, fut: F) -> Result<(), KeyAlreadyInsertedError<K, F>> {
/// Simple future for testing. Supports comparison, and can be mutated directly to become ready.