It's just that we need to be able to match up changes to the correct contact.  If we're upsyncing a local contact (which will have no GUID, since GUID is sync-target specific and we're not that sync target) we only have the QContactId to go on.  In that case, we need to ensure that we can store this in a custom property, remotely, so that when we retrieve the contact during later sync, we can match it up properly (at that stage, it will have a (remotely-provided) GUID, but we won't know which one is corresponds to at that point, without the contactid field).