Complete first draft of grammar, needs to add annotations