syncbase: check for remotely unverifiable mutations

Adds a mechanism to confirm that remotely unverifiable mutations
fail locally. An example is if a user doesn't have write permission
to a collection but makes a batch that:
  add write permission
  mutates the data
  removed the write permission

Since a remote syncbase will just see the mutation but not the
addition of the write permission then it can't tell that the
mutation should actually be allowed.

MultiPart: 1/2
Change-Id: Ia07cb4a6f81beb041f6518caa4fd83a57597c72d
4 files changed