libmultipath/discovery: read sysfs files uncached

The libudev function udev_device_get_sysattr_value() reads sysfs
attributes cached. This is useless for checking a device state.
There we want to see if it changes.

Unfortunately, libudev doesn't provide an uncached variant. This
is why we have to reimplement the functionality and some libudev
internal functions here.

Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Hannes Reinecke <hare@suse.de>
Signed-off-by: Sebastian Riemer <sebastian.riemer@profitbricks.com>