Remove `save` as reserved action

The question is here how to handle sparse sets. ‘save’ was intended as “unset omitted properties” and ‘update’ intended as “only modify provided properties”. ie. complete vs. partial representation. However there are several common use cases that make these two different actions confusing. Decision made to simplify structure and require only verbose and explicit listing for properties that should be modified (including unset).
Revert `match` objects to `{field=, op=, value=}`

The 0.4.0 object structure {$field: {$op:$value}}` may have been more concise, but required a lot more (non-intuitive) code to handle. This is bullshit. The slightly more verbose version implemented in this commit is arguably more readable AND much easier to process with code. Lock it.
Change `update` objects to match object format

Update objects were already close to the new match object format. Consistency is our friend. Rock out.
Add ‘unique’ requirement for populate field keys
Clarified populate subquery rules
Minor organisation of populate handler notes