Added generic IsEmpty function.
Testsuite for IsEmpty function.
Improved type detection.

According sysconfig default type, when nothing else detected, is "eth".
iHowever, old GetType in such case parsed device type from device name
instead.

Moreover, GetType's detection is based on cached data. When attempting
to detect uncached device type (e.g. when commiting new one) it could
lead to returning incorrect type (e.g. /dev/modem0 -> 'modem' - should
be 'ppp').
Adopted testsuite.

It used to use GetType but with defined inputs (no ifcfg provided) it falls to
default which is in fact call to device_type and key property of GetType
(searching for cached data) wasn't tested at all.
Updated changelog