Support std async traits
Async traits are now in nightly but they don't play well with enum_dispatch.
https://blog.rust-lang.org/inside-rust/2022/11/17/async-fn-in-trait-nightly.html
mismatched types
expected reference `&std::sync::Arc<tokio::sync::RwLock<mymod::MyStruct>>`
found struct `std::pin::Pin<std::boxed::Box<(dyn futures::Future<Output = &'static std::sync::Arc<tokio::sync::RwLock<mymod::MyStruct>>> + std::marker::Send + 'static)>>`