pub fn read_string<'a>(buf: &mut &'a [u8]) -> Result<&'a str, ParseError>