reworked compiler grammar of statements to manage bodies and scope (and empty statement)