Final command sending post

Using the timeout read, getting status works properly now for all devices, in fact, I have added it to the PLMProtocol start up to get the status for all devices. Setting the timeout to 5 seconds ensures that the read doesn't block for ever when the device doesn't respond. This fixes the issue I saw when trying to query status of RF only devices (remotes and motion detectors). Next thing on the list of stuff to do will be adding "Group" to the device commands, allowing UI's to gather related devices together.