Data.List: it is preferred that max_by (min_by) throw an exception if list is empty

提案として出します。
`Data.List.max_by` (`min_by)` は空リストに対して 0 を返していますが、
正常系と紛らわしいため、例外を投げたほうが良いと思います。