info: Read MDADM arrays as their size, not the size of their underlying drives

These are exposed to the user as the size of the array. If we find such
an array, read its size, record the drives and don't count their sizes
individually.

This is slightly fiddly for a couple of reasons:

  - There's no API exposed in udisks2 to get directly from the
    UDisksMDRaid object to the underlying UDisksDrives, so we have to
    construct proxies manually.
  - We might see the drives first, before we encounter the RAID array.
    So we keep a reference to the UDisks objects when counting disk
    sizes and then use this to later on subtract the size if we later
    find out a drive is actually part of an array.
11 jobs for wip/info-udisks2-mdadm in 5 minutes and 15 seconds (queued for 2 seconds)
latest
Status Job ID Name Coverage
  Build
passed #209741
build

00:02:56

 
  Test
passed #209743
asan

00:02:19

passed #209742
test

00:02:07

 
  Manual
manual #209748
allowed to fail manual
armv8
manual #209744
allowed to fail manual
flatpak
manual #209747
allowed to fail manual
msan
manual #209749
allowed to fail manual
ppc64le
manual #209745
allowed to fail manual
tsan
manual #209746
allowed to fail manual
ubsan
 
  Review
manual #209750
allowed to fail manual
review
manual #209751
allowed to fail manual
stop_review