Added overload of BasicFunctions.If that yields an Either<Alternative, Consequent>