Changes to make Dexcom work

These changes make Dexcom search serial ports "properly" for some definition of properly.

However, there are some issues:

* The progress bar doesn't work
* If the upload takes more than 2 minutes, the scanner will stop it and screw up the upload. It's set to 2 minutes so this is pretty unlikely.
* There are a couple of hacks in the code I don't like but don't know how to fix -- need Nico's feedback.

Need @nicolashery to: 

* Make the progress bar work again.
* Make scan not scan during an upload -- rescan timer is currently set to 2 minutes. 
* Make device initialize properly so that it doesn't try to do detectAll before init has been called. There's currently a 1 second timeout in there.
* Figure out how to do detectAll properly (I don't understand the argument binding magic). 

Please make the changes in this branch before merging.