pub fn decode<E: ErrorHandler>(
    data: &[u8],
    errors: &E,
    final_decode: bool
) -> Result<(String, usize), E::Error>