Fix debug logging with empty TX buffer
Properly use serial number to find device when rebooting
Ignore errors in device listing that don't affect the desired device

While running multiple `tessel update` commands, a device may detach
while another process is probing it. That's not the Tessel the other
process is looking for, so it's safe for it to ignore the error.
Ignore errors that occur after closing the interface.

On rampart, and maybe on Windows, transfers can fail on firmware update
detach before the transfers are cancelled.
Merge pull request #119 from tessel/km-fixes

Errors you ignore can't hurt you