This module also contains functions for reifying species
expressions to ASTs and reflecting ASTs back into other species
instances, which are in this module since they depend on the AST
type class instances.