Make the device picker update as devices are connected/disconnected
Make the device picker update as devices are connected/disconnected

Also re-evaluate the emulator list so if a connected/disconnected device is an emulator, it appears/disappears as appropriate.

Fixes #1863

Dart-Code/Dart-Code,Dart-Code/Dart-Code,Dart-Code/Dart-Code,Dart-Code/Dart-Code,Dart-Code/Dart-Code