udisks2: Improve handling of mounts which doesn't point into fs root

UDisks2 handling of mounts which doesn't point into fs root (created
over bind operation, or btrfs subvolumes) is not optimal, see:
https://github.com/storaged-project/udisks/issues/478

Also GIO API doesn't expect that one GVolume can have multiple
mountpoints. Thus don't try to match UDisksBlock with mount which
doesn't point into fs root and create standalone GVfsUDisks2Mount
for it (or use GVfsUDisks2Volume corresponding with fstab entry).

#330
1 job from wip/oholy/bind-mounts in 2 minutes and 3 seconds
Status Job ID Name Coverage
  Build
failed #162366
build

00:02:03

 
Name Stage Failure
failed
build Build
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
../monitor/udisks2/gvfsudisks2volumemonitor.c:1745:31: error: initialization of 'const gchar *' {aka 'const char *'} from 'int' makes pointer from integer without a cast [-Werror=int-conversion]
const gchar *root = g_unix_mount_get_root_path (mount_entry);
^~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
[250/253] Compiling C object 'monitor/goa/monitor@goa@@gvfs-goa-volume-monitor@exe/goavolumemonitor.c.o'.
[251/253] Compiling C object 'monitor/goa/monitor@goa@@gvfs-goa-volume-monitor@exe/goavolume.c.o'.
ninja: build stopped: subcommand failed.
ERROR: Job failed: exit code 1