More of visitor, with printer | refactor of IfThen/Else
Seems like a working visitor
Refactored IfThen and IfElse into IfThenElse with two constructors
Todo now, semantics check