A more sane approach to working with retries