instead of different classes for each taxonomic level, make it more flexible with a categorizable TaxonomicGroup (inspired by the variable presence of subfamilies)