Implements Phase 6.2 NDJSON streaming mode with frame types,
out-of-order buffer, and pipeline orchestration.
- Frame types: HeaderFrame, PageFrame, FooterFrame with
newline-delimited JSON serialization
- OutOfOrderBuffer: 8-page window with Condvar backpressure
for handling rayon's out-of-order page completion
- extract_streaming(): Pipeline that emits header → N×pages → footer
Current implementation delegates to extract_pdf() for extraction.
Full streaming extraction with incremental parsing is future work.
Closes: pdftract-5izq5
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>