added some nonterminals and terminals to expression and started messing with lvalue