Add Model.qml, and remove tight couplings