daemon: Added BlockdevMonitor.
shell: Always do a coldplug for any change on #storage.

This is more robust.  For example, get_block_devices_for_drive might
not return all block devices yet when a drive object is added, which
becomes important when we want to monitor I/O for drives.

In order to avoid excessive churning during initialization, multiple
change events in the same event loop iteration are collapsed.
shell: Show I/O graphs for drives on #storage page.

We don't include mdraid or lvm in the graphs since we show their I/O
already via the drives for their physical volumes.