What are the primary differences between FASTQ, BAM, and VCF file formats, and how do you parse them?