AbstractIterable should redefine getSequence to implement it

otherwise Iterable.sequence will create a new AbstractIterable and call .sequence on it
causing an infinite recursion, because Iterable.sequence is implemented using a comprehension,
which is implemented with AbstractIterable