Improving Top-Down Generation of Natural Language with Hierarchy