- implement buffering interface (which should be made explicit) in all
storages because buffering would crash if storages where ordered differently:
flush and clear_buffers, which just chain-call for non-buffering storages
- improve typing of the buffering interface, removing spurious Optionals
- improve BufferedProxyStorage typing with literals
Dynamic features based on dicts of literals (e.g. object buffers, statistics)
should be made more static to catch many potential mistakes.
Depends on D4017