fix version handling

closes: #2178

Net::SNMP->version() doesn't return a string value, as expected for
-version argument of Net::SNMP->session(), but a numerical identifier.
force fake device id

closes: #2301

This avoids a warning for undefined value in execution traces.
use a hash to pass getDeviceInfo() parameters
isEnabled() must continue if target is server
create the REST/JSON client