clean up some warnings
expose NGIO getStatus method to LabQuest class

besides getting the status of the device this should be
an efficient way to see if the device is attached.
[#56591614]
improve LabQuest error reporting

The biggest visible change from this is exceptions from
LabQuest methods now know more about the reason for the exception.
And in particular the exceptions now have a isCommunicationsError()
which should indicate if a particular command failed because of 
a timeout problem.
[#56591614]
LabQuestSensorDevice#isAttached checks device status

[#56591614]