CurrencyConverter Update
- Updated CurrencyConverter: CurrencyConverter keeps conversion path that the user can view by right-clicking balances and positions -> Currency Conversion. CurrencyConverter first makes use of the exchange rates on a particular exchange to do conversions. Failing a lookup there, it falls through to ask Binance and finally CoinGecko for prices. CurrencyConverter breaks up conversions where currenies don't exist on a particular exchage and recursively calls the CurrencyConverter, recombining conversions from those calls.
- Reloading on Win and Parallels also refreshes CurrencyConverter.
- Spent time optimising performance for conversion paths.
- Separated concerns of symbol lookups and currency conversion.
- Fixed bug that caused excessive memory consumption for users with multiple custombalances.