Arranged calls to .matchrule() in parser in such a way that there is less of them
Small fix
Removed one redundant test
Removed direct calls to print() from parser
Added echo() as a wrapper for print() is test suite, for easier control over debug messages
Better error message from token stream on index error
Some more work on rule deserialization
Better error reporting, fixed raising EndOfTokenStreamError