Fixed grammar
Refactored expressions: only operators have children (and only binary operators have two of them)