Introduce Clause ast objects
Fail to match an empty statement
Group updates correctly
Add DELETE