make `tournament` create new objects for chromosomes + tests as we want to create new population and because all of out methods are by reference, creating new instances from tournament is the best way to handle any further misuse. Took 1 hour 21 minutes