mutation: consume(): make it pausable/resumable
mutation: consume(): make it pausable/resumable

To avoid stalls or overconsumption for consumers which have a limit on
how much they want to consume in one go, the mutation::consume() is made
pausable/resumable. This happens via a cookie which is now returned as
part of the returned result, and which can be passed to a later
consume call to resume the previous one.

scylladb/scylla,scylladb/scylla,scylladb/scylla,scylladb/scylla