Create a report of all the extracted features
    :param gc_dict: dictionary of strain name: GC%
    :param contig_dist_dict: dictionary of strain: tuple of contig distribution frequencies
    :param longest_contig_dict: dictionary of strain name: longest contig
    :param genome_length_dict: dictionary of strain name: total genome length
    :param num_contigs_dict: dictionary of strain name: total number of contigs
    :param n50_dict: dictionary of strain name: N50
    :param n75_dict: dictionary of strain name: N75
    :param n90_dict: dictionary of strain name: N90
    :param l50_dict: dictionary of strain name: L50
    :param l75_dict: dictionary of strain name: L75
    :param l90_dict: dictionary of strain name: L90
    :param orf_dist_dict: dictionary of strain name: tuple of ORF length frequencies
    :param genus_dict: dictionary of strain name: genus
    :param sequencepath: path of folder containing FASTA genomes

def reporter(gc_dict, contig_dist_dict, longest_contig_dict, genome_length_dict, num_contigs_dict, n50_dict, n75_dict,
             n90_dict, l50_dict, l75_dict, l90_dict, orf_dist_dict, genus_dict, sequencepath):
    """
    Create a report of all the extracted features
    :param gc_dict: dictionary of strain name: GC%
    :param contig_dist_dict: dictionary of strain: tuple of contig distribution frequencies
    :param longest_contig_dict: dictionary of strain name: longest contig
    :param genome_length_dict: dictionary of strain name: total genome length
    :param num_contigs_dict: dictionary of strain name: total number of contigs
    :param n50_dict: dictionary of strain name: N50
    :param n75_dict: dictionary of strain name: N75
    :param n90_dict: dictionary of strain name: N90
    :param l50_dict: dictionary of strain name: L50
    :param l75_dict: dictionary of strain name: L75
    :param l90_dict: dictionary of strain name: L90
    :param orf_dist_dict: dictionary of strain name: tuple of ORF length frequencies
    :param genus_dict: dictionary of strain name: genus
    :param sequencepath: path of folder containing FASTA genomes
    """
    # Initialise string with header information
    data = 'SampleName,TotalLength,NumContigs,LongestContig,Contigs>1000000,Contigs>500000,Contigs>100000,' \
           'Contigs>50000,Contigs>10000,Contigs>5000,Contigs<5000,TotalORFs,ORFs>3000,ORFs>1000,ORFs>500,' \
           'ORFs<500,N50,N75,N90,L50,L75,L90,GC%,Genus\n'
    # Create and open the report for writign
    with open(os.path.join(sequencepath, 'extracted_features.csv'), 'w') as feature_report:
        for file_name in sorted(longest_contig_dict):
            # Populate the data string with the appropriate values
            data += '{name},{totlen},{numcontigs},{longestcontig},{over_106},{over_56},{over_105},{over_55},' \
                    '{over_104},{over_54},{under_54},{tORFS},{ORF33},{ORF13},{ORF52}, {ORF11},{n50},{n75},{n90},' \
                    '{l50},{l75},{l90},{gc},{genus}\n'\
                .format(name=file_name,
                        totlen=genome_length_dict[file_name],
                        numcontigs=num_contigs_dict[file_name],
                        longestcontig=longest_contig_dict[file_name],
                        over_106=contig_dist_dict[file_name][0],
                        over_56=contig_dist_dict[file_name][1],
                        over_105=contig_dist_dict[file_name][2],
                        over_55=contig_dist_dict[file_name][3],
                        over_104=contig_dist_dict[file_name][4],
                        over_54=contig_dist_dict[file_name][5],
                        under_54=contig_dist_dict[file_name][6],
                        tORFS=orf_dist_dict[file_name][0],
                        ORF33=orf_dist_dict[file_name][1],
                        ORF13=orf_dist_dict[file_name][2],
                        ORF52=orf_dist_dict[file_name][3],
                        ORF11=orf_dist_dict[file_name][4],
                        n50=n50_dict[file_name],
                        n75=n75_dict[file_name],
                        n90=n90_dict[file_name],
                        l50=l50_dict[file_name],
                        l75=l75_dict[file_name],
                        l90=l90_dict[file_name],
                        gc=gc_dict[file_name],
                        genus=genus_dict[file_name])
        # Write the string to file
        feature_report.write(data)