Context manager generator for retry block pattern and decorator.

Unless you have a check that the default isolation level is `READ COMMITTED`, I think that this manager should explicitly set the level. Otherwise, if we change the default level, it's going to have very surprising results.