Added
- [x] Added [`retype`](https://retype.com) documentation
- [x] Added [`struct-model-python`](https://github.com/AdamBrianBright/struct-model-python) support
- [x] Added `CATS` client
- [x] Added `INIT Statement` support
- [x] Added separate `Config` class
- [x] Server now chooses compressors from which client support
Changed
- [x] Updated Python version to `3.10`
- [x] Moved protocol-related things to `v2` folder
- [x] Replaced [`orjson`](https://github.com/ijl/orjson) back with [`ujson`](https://github.com/ultrajson/ultrajson)
- [x] Middlewares now apply at startup
- [x] Replaced `Server.instance -> Server` with `Server.running_server() -> list[Server]`
- [x] Moved `Action*.handle()` logic to `Connection.handle()` unified handler
- [x] Replaced `int.to_bytes`, `int.from_bytes` with `to_uint` and `as_uint`
Removed
- [x] Removed `cats.struct` module
Fixed
- [x] Fixed `PyPi` version error
- [x] Fixed slow sending, caused by `sleep(0.05)`, replaced with `Queue`