Improved type detection.

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