Grounded Natural Language Generation via Interpretable Hierarchical Operations