Repair clashing merge

 * Restored deleted files to previous states
    - src/parser/Binop.java
    - src/parser/SimpleNode.java
    - src/parser/Type.java
    - src/parser/Unop.java
 * Restored src/semantic/Type.java to previous state because all changes
   either were unessecarily breaking encapsulation, or adding duplicate
   features.
 * Completed the merging of the two independent implementations of
   expression and return-statement semantic checks, updating the version
   added in c22efae to the latest semantics of Type, SymbolTable and
   SemanticChecker.
 * Removed SymbolTable.getLatestFuncDef() because it was redundant with
   SemanticChecker.currentFunctionContext, and I personally believe that
   such state beling in the SemanticChecker class, and that placing it in
   the SymbolTable class would violate the Single Responsibility Principle.