Added a ListUtils.collect(List<T>, Function<T, R>) method