Uses sets for grammar rules, indents files