Condition numbers, iterative refinement and error bounds