* Move some stuff around in prep for a VL2 rework and identity rework.
* Mix ephemeral keys into "h"
* More topology stuff for VL2.
* Simplify key queue, fix macOS issues with bindings, and no need to cache PSK forever.
* Some more merge fixes.
* A bunch of ZSSP cleanup and optimization. Runs a bit faster now.
* Remove some unused util code.
* scatter gather stuff
* The scatter/gather algorithm works.
* Make OpenSSL init get called automatically at process launch, and some more scatter gather work.
* added support for cloning on EcKey
* Scatter/gather, move SG into VL2 since that is where it will be used, add an array chunker to utils::memory
* Simplify some Rust generic madness.
* docs
* Some cleanup and reorg.
* Bring back AES-GMAC-SIV tests.
* Turns out a Mutex is not really any slower...
---------
Co-authored-by: mamoniot <mamoniot@protonmail.com>