Fixes upsert unpacking ObjectIDs in query doc.

@corydobson @parkr
Just found a bug that makes upserts using the search query fields with `ObjectID`values to pick them apart and put their hidden properties into the newly inserted documents instead of copying them holistically. This is a fix.
`expect(newDocument.b).to.deep.equal(id2)`?