Exception when updating and deleting a set nested in a map

If a map has one set, that set has existing values, and a batch operation adds a new value and then deletes the set, the client apparently sends something pretty weird to Riak.

````ruby
irb(main):092:0> map.batch do |m|
irb(main):093:1* m.sets[set].add('Z')
irb(main):094:1> m.sets.delete 'set'
irb(main):095:1> end
Riak::ProtobuffsErrorResponse: Expected success from Riak but received 0. {precondition,{not_present,{<<"set">>,riak_dt_orswot}}}
````
I don't agree with the expectation that this keeps 'X' in the set.

The `add 'X'` at line 61: [X] ∪ [X] = [X]
`remove 'X'` at line 62: [X] - [X] = []

Should I be treating batches as a collection of unordered operations instead of a sequence of operations?