Replace curl with requests library and fix sync pipeline order
- Replace curl-based HTTP client with ocaml-requests library
- Proper HTTP status code handling (was silently failing on errors)
- Connection pooling and TLS support via Eio
- Change ~proc_mgr parameter to ~http across all sync modules
- Fix PeerTube JSON parsing for nullable fields
- Add nullable_string and nullable_ptime Jsont combinators
- Handle null values in description, originallyPublishedAt, thumbnailPath
- Reorder sync pipeline: images -> thumbs -> faces -> videos -> srcsetter
- Srcsetter now runs last to process all fetched images
- Thumbnails now go to local_source_dir for srcsetter processing
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>