Support retrying of 503 responses with configurable backoff

Also includes a tweak to the user_agent