Transition to Failure, preserving the best previous value if any.
Failure<T, E> toFailure(E failure) { return Failure( failure, this, ); }