Extracted lexical analysis to class Lexer, in lexer.h;
Added struct Token, in token.h;
Introduced JavaIterator concept, in concepts.txt.
Removed unused token ids IDENTATION, COMMENTARY, BLANK, and NEWLINE.
Moved definition of member function Lexer::compute_next() and constructor Lexer::Lexer() to lexer.cpp.
Modified Lexer class to use shared pointers to the data string