A taxonomy of thinking