Properly pass statements around in the parser.
Set value of assign_op explicitly.
Assignment for expr ::= unary_expr was backwards