- updated the update method of device, multilevel is now updated using a seperate function

 - reduced the number of calls to device.update
 - reduced the interval for a complete device update
 - increased the interval for device update when in learning mode