pub fn read_string(data: &[u8], pos: &mut usize) -> Result<String, String>
Reads a length-prefixed UTF-8 string, advancing pos.
pos