pub fn from_kind( kind: DataComponentKind, buf: &mut Cursor<&[u8]>, ) -> Result<Box<dyn EncodableDataComponent>, BufReadError>