Added an example of algorithm that uses a yield instead of a return.

These might be usefull if we want to do work outside of the loop, like
checkpointing or printing the log every other generation.
Well, the gen seems to be used mostly for the logbook.record, which could be placed out of the algorithm.