KALM: A Rule-based Approach for Knowledge Authoring and Question Answering