Why does this inherit from `HTTPError` but the others inherit from `TimeoutError`? (If there's a reason, please document it, as it's not obvious to me).