Reasoning and Learning in Interactive Natural Language Systems