First attempt at full-grammar parser