Genomic Features
The GenomicFeatures class processes data from a GFF formatted file. Internally it stores the GFF features in Kotlin dataframes. THis allows quicker access than using an internal database. The Kotlin dataframe object also allows for filtering based on columns, metrics for columns and rows.
This class also provides functions that can filter and combine data from different feature groups into a single dataframe for user perusal.
TO create the dataframes, this code uses a bufferedReader rather than DataFrame.read(
The refFasta is optional. IF it exists, it will be used to link gff ranges with reference sequence. See examples of how this in GenomicFeatureTest:"test GenomicFeatures with fasta" Work needs to be done here to create functions for combining them based on user requests.