refactor: use pratt parser for if expressions - WIP, DON'T MERGE

So, here is the (very) first version of the Pratt's parser being used for expressions contained inside {if} statements. This still needs some polishing and there are 4 skipped tests but opening this PR now for:
* code review
* tests checks in all browsers on Sauce
you should add the license header + some comments with a link to Crockford's article on the Pratt parser