This is a convenience to allow renderers to figure out the sample
count for their pso by just querying renderTarget()->sampleCount()
where the render target is set up and provided from another component
outside of the renderer's knowledge and control.

Shader resources are now set via a dedicated API (setShaderResources)
instead of setGraphicsPipeline.
Also extend docs about command buffers and defered command execution.
Do a little cleanup for gl and d3d when it comes to the "fake" command
queues.

Sharable resources, which are at least buffers and textures, can now be
orphaned, meaning the owning QRhi can be destroyed before releasing the
QRhiResource. They will still function in a limited way (cannot be rebuilt
anymore) as long as there is at least one QRhi associated with the
QRhiResourceSharingHost (i.e. as long as the share group is non-empty).

The threaded case cannot be supported on all backends for now.
Revert parts of the previous d3d patch.
Some day we may consider exploring the possibility of doing something
with deferred contexts on d3d11 but that's not an option for now.

Here we choose to go the heavy weight route and turn it into a
d-pointered (implicitly shared, even) class since the data a binding
description needs may grow in yet-unknown ways when introducing support
for other resource types.