add _getInstallDate() to reduce complexity

This patch add _getInstallDate() to avoid the line used before to collect $installDate.

the encodeFromRegistry was not required since installDate
is a numerical value.

I also added two tests to be sure value are define, hopefuly, this
will fix #1813.

see: #1813
GET and WALK models key are array
Merge branch '2.2.x' of git+ssh://forge.fusioninventory.org/git/fusioninventory/agent into 2.2.x
fix a waring during USB inventry

closes: #1990

Reported-by: Walid Nouh <walid.nouh@gmail.com>
fix: avoid err is the controller have no DeviceID

closes: #1989

Reported-by: Walid Nouh <walid.nouh@gmail.com>