Add customizable exception classes, logging, retry interval, max failures to @retry.
Update documentation