umount: improve --recursive docs

Signed-off-by: Karel Zak <kzak@redhat.com>
libmount: optimize tab files parsing

 - ignore empty files
 - ignore empty tables

Signed-off-by: Karel Zak <kzak@redhat.com>
libmount: don't prepare update for empty mtab/utab on umount

Signed-off-by: Karel Zak <kzak@redhat.com>
libmount: export umount mountpoint look up code

Signed-off-by: Karel Zak <kzak@redhat.com>
umount: add --all-targets

The same source (whole filesystem or filesystems subvolume) could be
mounted on more targets (mountpoints). For example bind mounts or
btrfs sub-volumes.

If you want to detach the source device from the system then you need
to unmount all the mountpoints.

 umount --all-targets <device|mountpoint>

provides this functionality. This option could be used together with
--recursive. Then all nested mountpoints within the filesystem are
unmounted too. For example:

 umount --recursive --all-targets /dev/sdb1

should be a way how to make the device unmounted at all.

Signed-off-by: Karel Zak <kzak@redhat.com>
tests: add umount --all-targets tests

Signed-off-by: Karel Zak <kzak@redhat.com>