how can / should I register a KVO observer for *all* entities and keys, regardless of their type?

The purpose of this is to monitor changes to objects and mark them as modified, so that I can provide sync functionality through a JSON API with a web service.

Also, if I'm doing this wrong, what's the right way?

EDIT: Not that this is going to be used in production code and I'd rather not risk using a library that is immature.