pull reverse() up to Iterable