What are species?

One of the first problems to solve was how to make different species.
What is a species, actually?
I had to read up on taxonomy, the study of grouping animals and plants. It's such an interesting read. I learned a lot about the history of taxonomy, all the way from Aristoteles, to Carl von Linné, to DNA sequencing.
Wrong path
Quite naively, I started building classes in javascript for all the levels of taxonomy. Domain, Kingdom, Phylum... all the way down to Genus ans finally Species, all extending their respective parent class. It was very neat and clean.
I then built an Organism class and assigned a taxonomy to a list of ~1000 randomly generated organisms, happy to see that each Organism had a full taxonomy dependency from Species up to Kingdom, all randomly assigned, while maintaining their hierarchal dependencies.
I was thinking of ways to transfer this transfer the taxonomy to an Organism's offspring, and how new species would evolve. It was pretty to see all these organisms with their assigned species. An ordered chaos following simple rules.
But it felt rigid. And wrong.
More in the next post.