Restructure model 'clone' operation (+rudimentary diff impl)