libdevmapper: add dm_units_to_factor for size unit parsing

Actually moving the existing code from LVM to libdm for reuse.
cleanup: _move_pv is static

metadata/metadata.c:363:5: warning: no previous prototype for '_move_pv' [-Wmissing-prototypes]
display: use Virtual for virtual LV

Emphesize virtual extents for virtual LVs and for
those use  'Virtual extents' instead of 'Logical extents',
so it's immeditatelly visible, which extents do have
straighforward physical backend.
display: show monitoring status

When displaying segments  (lvdisplay --maps)
show monitoring status when supported by segment.
thin: display info when -tpool is running

For percentage display we need -tpool - so check for layered
device presence here instead of plain pool device.
Also update 'info' - so when pool is 'available' we
display open count for -tpool device instead of mostly
irrelevant pool.
TODO: Maybe we should actually display this open info always?
(even when just -tpool is available, but pool is not)
thin: move segment info display to correct code section

Relocate info from thin pool and thin volume segments
to proper code section for segments.
Add discards and thin count status info.

Info is shown with  'lvdisplay --maps' (like for other segments).
lvscan: drop test for snapshosts

When showing  ACTIVE status for snapshot's origin,
avoid testing all its snapshot - it's not useful
to tell user origin is inactivate, while it's clearly
available and running - just one of its snapshot leg
is invalid...
cleanup: put all tests within switch

No reason to check for VALID in extra if.
tests: improve coverage

Test more code paths for lvscan & lvdisplay
pvremove: Catch CTRL-c during prompts.
display: check for dmeventd support

When quering for dmeventd monitoring status, check first
if lvm2 is configured to monitor to avoid unwanted start
of dmeventd process for answering monitoring status.
configure: corrected ioctl option

The correct name for disable ioctl option is --disable-ioctl
(--disable-driver never worked)
Also sort scripts generated files alphabetically.
libdm: cleanup complation without DM_IOCTLS
devmapper: fix compilation without devmapper

Fix compilation when configured with --disable-devmapper option.
devmapper-event: always initialize timeout

Always pass fully initialized timeval struct to select.
lv: show X attr when lv_info fails

Print 'X' also when lv_info() fails.
(i.e. compilation with --disable-ioctl)
makefile: fix regression

Commit 1af05a7a166a470d1b9d86f88fdc64c2d984124b was incorrect.
Generated files from configure could be only distclean-ed.
(in-release fix)
unknown: add_target_line is not needed

Leave addition of unknown segment to table as internal error.
Do not replace unknown segment with error device.
cleanup: indent in devmapper-event

Drop header inclusion - this file is already included.
Shorten code.
cleanup: indent