I agree on both the points you mentioned - it did 'look' like it was disassembly and reassembly so I can understand there's nowhere to save that 'state' for either object (I'm a programmer too so I can see both sides).
Unless a particular objects state could be referenced on create as well as destroy, and some indication of 'object B was a move from object A, pass in object A's state as the initial state to object B'. I don't know. I don't know your code so it could be a right pain to do. :) I just know it'd be really nice to have. :D
Yeah true, it would indeed! =)