We should have methods like maximumOption/minimumOption on Foldable and maximum/minimum on Reducible. The default implementation can simply foldLeft/reduceLeft through the structure and keep track of the max/min. These methods would require an implicit Order instance.