block: Make op blockers recursive

Since the block layer code is starting to modify the BDS graph right in the
middle of BDS chains (block-mirror's replace parameter for example) QEMU needs
to properly block and unblock whole BDS subtrees; recursion is a neat way to
achieve this task.

This patch also takes care of modifying the op blockers users.

Signed-off-by: Benoit Canet <benoit.canet@nodalink.com>