A Domain-Independent Reasoning Mechanism for an ITS Authoring Tool