Complete rewrite of Pilmoji.
Breaking changes:
- Bump Python version requirement to 3.8+
- **Drop async support** (See below)
- Change signature of `Pilmoji.__init__`
- Refactored files
Other non-breaking changes:
- Properly type Pilmoji
- Ability to install from Github
- Multi-character emoji support
- A lot more emoji sources than just Twemoji, Microsoft, and Apple
- You will always be a subclass away from making your own source
Why drop async support for pilmoji?
Pilmoji shouldn't have been used asynchronously in the first place - instead,
it was supposed to be used synchronously with your other Pillow scripts, and if you need it to be async,
in an executor.
(Using async Pilmoji in an executor would result in something ugly such as a double await anyways)