The Conceptual and Architectural Design of a System Supporting Exploratory Learning of Mathematics Generalisation