Yes. When you're getting initial data you'll get a document of the form `{ new_val: data }`. When you're getting changes, the document is of the form `{ new_val: data, old_val: data }`. Note that in the former case, the `old_data` field is missing.
Is there a way to get an entire table as the initial result set before getting update diffs? Something like:
r.table("users").between(-Infinity, Infinity).changes().run() // Not actually valid