tldr of the adapters is: if the user has an embedded-io stream they can use your driver like this: ```rust let some_embedded_io_stream = ...; let parser = SbusParser::new(some_embedded_io_stream); ``` if instead they have an std::io stream, they can wrap it with the adapter to convert it to embedded-io: ```rust use embedded_io_adapters::std::FromStd; // or the `tokio` or `futures` adapters if that's what you're using let some_std_io_stream = ...; let parser = SbusParser::new(FromStd::new(some_std_io_stream)); ```