[SPARK-3382] GradientDescent convergence tolerance

GrandientDescent can receive convergence tolerance value. Default value is 0.0.
When loss value becomes less than the tolerance which is set by user, iteration is terminated.
@mengxr I'm sorry but I don't know what solution vector is in this context. What diff should I take to compare with convergence torelance?