[Selection]: Fleshed out tournament selection

Fleshed out tournament selection (still WIP), and made some changes to the
Individual class that I realized would be necessary while I was writing the
CrossoverOperation and SelectionStrategy classes (but forgot to make before).

Signed-off-by: Sebastian Lenartowicz <slenarto@uoguelph.ca>