* initial support for ShortVideo message
* dump api
* [core] upload protocol
* [core] short video upload event
* [core] doc
* [core] protocol
* [core] fix mp4 file check
* [core] extract fileName from `OnlineShortVideo` to `ShortVideo`
* [core] ShortVideo.Builder
* [core] mirai code support for `ShortVideo`
* [core] add doc for OnlineShortVideo and OfflineShortVideo
* [core] fix text
* dump api
* update `Contact.uploadShortVideo`·` doc
* [core] remove mirai code support for ShortVideo
* [core] ensure Mirai service is loaded before load other services
* [core] introduce `CombinedExternalResource` to reference multiple external resources for combined calculation.
* [core] move refine context key defined in `OnlineShortVideoMsgInternal` to `RefineContext`
* [core] remove data class
* [core] broadcast `ShortVideoUploadEvent.Failed` event
* [core] warn when cannot determine fromId
* [core] add `contentToString` and `toString` for `OnlineShortVideoMsgInternal`
* [core] optimize imports
* [core] import
* [core] revert
* [core] doc
* [core] auto close resource
* dump api
* keep consistence of param name
* update doc
* move Builder to OfflineShortVideo
* optimize RefineContext
* RefineContext.merge
* dump api
* fix test
* show more video info
* optimize constructor and builder of offline short video
* optimize thumbnail
* move thumbnail to main constructor arg
* dump api
* avoid null cast exception.
* combine format transition
* cleanup
1.Body is a lambda function, so invoke it by only once
2.Fix wrong protoBuf serializer, use protocol one
3.Pass all packets to EncryptService (which packet should be sign should judge by service itself)
4.Fix wrong proto number and add missed default value, also fix proto naming
* Initial design for encryption SPI & T544 support
* Fix missed vararg
* Move EncryptWorkerService to internal spi
* Add useAndroid val to QQAndroidClient and rebase to the latest dev branch
* Remove docs and annotations (Throws and MiraiExperimentalApi)
* Remove unwanted changes
* Remove redundant runBlocking in tlv544
* Tweak the file annotation location
* Remove suspend modifier for doTLVEncrypt
* Disable DebuggingProperties
* Fix format
* Remove empty line
* Remove empty line again
* Use instance field directly
* Add Volatile annotation to instance
* Use atomicRef instead of field
* Use kotlin lambda for readability
* wip
* Improve EncryptService API
* Add possible values
* remove docs
* Add key BOT_PROTOCOL
---------
Co-authored-by: Him188 <Him188@mamoe.net>