[FitnessFunction]: Decoupled toString() from FitnessFunction

Decoupled the Individual's toString() function from FitnessFunction, and
gave it its own class instead (this was made necessary by the addition of
fitness propagation, which makes it possible for an Individual not to have
or need a fitness function, but still need some way to print itself).

Signed-off-by: Sebastian Lenartowicz <slenarto@uoguelph.ca>
[Examples]: Modified examples to use ToStringFunction

Modified the examples to use the ToStringFunction class, and separate
their fitness functions from their ToString functions.

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