Practical Approach to Knowledge-based Question Answering with Natural Language Understanding and Advanced Reasoning