Atom | Reasoning and Explanation in a Computational Cognitive Architecture