How would you design a mobile app feature that needs to support a clean, testable approach to handling retries, backoff, and failure states at Airbnb?