GetLoops: Use Data.Sequence instead

Unfortunately I don't have any numbers to characterize the difference but asymptotically it seems that this should be a bit of a win. Of course, how much of a win will depend upon how large loops typically get before closing.