Fast deploy over USB

This patch enables the fast deployment but only over USB. This implementation of the fast deployment doesn't support yet cross session capabilities.
I'd like to avoid modifying the `File` class if we can. This method (https://github.com/dart-lang/chromedeveditor/blob/master/ide/app/lib/workspace_utils.dart#L135) used in `launch.dart`, might serve as a similar example. If you have the time of the last deployment, it's possible to query all the modified files by traversing from the Project.

Can you get the time of last deployment? It seems like for this fast push to be reliable, you need to know the state of the app from the POV of the app harness (app dev tool). Otherwise the user could do something like delete the app from the app harness, and we'd just try and push a partial delta over to it, instead of the whole app.