Refactored semantic analyzer, extracted compiler result related functions into CompilerResultEmitter
Refactored semantic analyzer, moved beforeVisit/afterVisit to SemanticPass
Refactored semantic analyzer, moved operator definition related code to OperatorResolver
Added operator's associativity and precedence-based sorting in expression transformation