* feat(pdf): report pages that need ocr
* docs: exit code 3 and the error contract after needsocr
* docs(python): count the conversion failures after needsocr
* feat(pdf): name the pages that need ocr in the message
* feat(math): convert equations to latex math
* fix(math): harden delimiters, cell pipes, and rtf run properties
* fix(math): keep escaped pipes and zero-width spaces as written