(PUP-3379) Eliminate extra counter
Previously, retries counted down from n to 0, raising when we got to
0. We also have a failures counter going from 0 to n, used to compute
the sleep time.
This commit removes the retries counter, since the check can be
implemented using the failures counter. This commit also simplifies
how the default options are handled, and adds documentation.