added stopping criteria: any coordinate descent leads to a change in objective function smaller than epsilon.