Representing, Running, and Revising Mental Models: A Computational Model. (27th December 2017)