Update Kucoin connector to include all the latest components and improvements to make it compliant with the connector standards (Binance connector as mentioned in the documentation).
The changes introduced are:
- Refactor connector to make it a pure Python connector.
- Adapt all REST API interactions to use the recently developed web assistant.
- Adapt all websocket API interactions to use the recently developed web assistant.
- Change implementation of all data source classes to use only one websocket connection in each of them.
- Ensure all consumptions of the API are regulated by the use of the throttler (both REST and websocket API)
- Refactor the connector to use the newly developed client order tracker to manage in flight orders.
- Refactor the connector to stop using ad hoc logic to translate from exchange token-pair notation to client token-pair notation and the other way round. Instead keep track of the mapping base on the information provided by the exchange and the tokens composing each pair.
- Dosctrings for the public methods.
- Ensure we are using the latest version of the exchange API.
- Enable domains in Kucoin connector to allow the use of its testnet (officially called sandbox).
PR: https://github.com/hummingbot/hummingbot/pull/5197