Full list comprehensions support

PR #169 in one batch, thanks @sjrd.