flutter drive
flutter start
flutter start's method of finding devices to run the app on is not suitable for flutter drive. This commit also refactors several tool services to allow mocking in unit tests.