Implement Option.GetOrElse() as extension method so covariance is kept.