pub fn block_on_tokio<T>(fut: impl Future<Output = Result<T>>) -> Result<T>
Block on the given future in a tokio context, creating a new one if required