Further refactoring of CParser, not it starts to look good