Solved 3 shift/reduce conflicts in language grammar
1. Redundant definition for variable in factor definition
2. Introduced function, func_id, and FUNC_ID to require ID preceding a '(' be function IDs and not variable IDs
3. Introduced unary minus to eliminate ambiguity in simple_expression definition
4. Added argument to makefile's clean target to remove temporary files *~