This function reads a `samples.csv` file from a given path, extracts `R1` and optionally `R2` FASTQ paths, and runs FastQC on all unique files. The output is saved under `results/fastQC/` in the same directory as the CSV.
This function reads a `samples.csv` file from a given path, extracts `R1` and optionally `R2` FASTQ paths, and runs FastQC on all unique files. The output is saved under `results/fastQC/` in the same directory as the CSV.