lexer.{cpp,h}: Allow to tokenize a string.
parser.{cpp,h}: Allow parsing a string.
semantic_analyser.cpp: Implement parse_single_line.
main.cpp: Add interactive mode.
semantic_analyser.cpp: Correct types in parse_single_line

If there is no declarator in the given line, what we want is
a Parser, not a SemanticAnalyser. Altough the SemanticAnalyser
returns a fully parsed operator, it also populates the SymbolTable,
and this behaviour is unwanted. Thus, we do the parsing directly.