WIP: Consistent backends

Work in progress. Expect rebases, squashes, other shenanigans. Suggestions, comments, complaints welcome.

Concept is summarised by:

    +  ::arg().setSwitch("experimental-consistent-backends","Assume that all backends have identical data, tolerate individual backend failure")="no"