Replace singletons with @functools.lru_cache() decorator
- [x] `CurrencySymbol` - [x] `BlockchainParams` - [x] `HeadBlock` - [x] `UDValue` - [x] `ClientInstance` --- Use `@functools.lru_cache(maxsize=1)` decorator: - [Blog article: Simple singletons](https://cosmiccoding.com.au/tutorials/simple_singletons) - [Python doc: `functools.lru_cache`](https://docs.python.org/3/library/functools.html#functools.lru_cache)
issue