Use devil's adb with each bisect iteration, also start/stop daemons.
In order to cleanly accomplish this change, custom android code has been moved out of the auto bisect loop and into two context managers. Desktop and other non-Android builds will use noop context managers instead.
This change cleans up a lot of nested logic in the bisect and makes it a little less commingled with calling code.
BUG=
660852