feat(extracted-text): add dataset column and story-level segment fields
- Add dataset column to ExtractedText model for dataset categorization
- Add named_entities (dict) and extraction_metadata (dict) to TextSegment
- Relax OCR validation when dataset='story' (only end==start+1 enforced)
- Add conditional validators for story dataset on create and update
- Add migration e3f4a5b6c7d8 for dataset column