Updated grammar, tests. Checker now works (more or less)