Hypothetical Query Answering in First-Order Databases