Case-based Reasoning for Natural Language Queries over Knowledge Bases