Algorithms And Resources For Scalable Natural Language Generation