NegativeDetector now accepts an optional forced FilmType. When
film_type != "auto" in config.ini, auto-detection is skipped and
the configured type is applied directly. build_pipeline() in
CliRunner maps c41→ColorNegative and bw→BWNegative accordingly.
Default config changed from film_type=auto to film_type=c41 to
match the project's primary use case (C-41 color negatives).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Implements a zero-dependency INI parser for application settings with
[batch], [conversion], and [quality] sections. Includes AppConfig::load(),
write_default(), output_format(), and parsed_extensions() helpers, along
with a documented config.ini example file.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>