Refactor observe-from-observe-changes

Specifically, factor out the logic that keeps a cache of the current
cursor contents from the part that calls observe callbacks.

Also:
- move IdMap from mongo-livedata to minimongo
- get rid of references to the 'moved' callback which no longer exists
Refactor observe dedup; support it for oplog.