[POC] Operations queue

This is a proof of concept for an operations queue which unities the seperate `scheduledInserts`, `scheduledUpdates`, `scheduledReorders`, etc. into a single queue. 

This enables persistance operations to be committed out in the order in which they were programmed.

This makes sense for move, reorder and delete operations which can have multiple entries in the stack for a given document. It makes less sense for "update" because the changeset is not recorded for each operation ("persist") but is calculated once before comitting.

Lots of test fails here and this is not necessarily the solution we need, just an experiment.