Used the word `sequence` not `list` in the grammar to avoid confusion. Changed `if then else` to
evaluate the branches in a new environment. Added more docs.