feature: retry-on-error

retry 500 range responses and HTTPoison.HTTPErrors with exponential backoff