Android device support

This commit enables run on android device functionality. Now all the adb
calls are passed a serialNumber. AndroidLaunchConfig can target a
specific serialNumber to launch. If a serialNumber does not exist it
assumes it is a emulator launch. 

Also changed AndroidSDKManager's wait for device mechanism. We are now
polling for the the connected emulator since SDKs mechanism can not
distinguish between emulator and a real device.