Added `UnfoldableLL` type class.

Represents structures that can be unfolded from a stream of values.
Move various functions from `ListLike` to `FoldableLL` and
`UnfoldableLL`.