Split Uploader into multiple files. Move non-android code into a
separate module.

Tested:
  (with device or emulator connected)
  ./gradlew clean test connectedAndroidTest
Update wait_for_emulator script.
Fix some hamcrest imports.
Report failures when uploading, so that they bubble up to the UI.
Make the restuploaders successful on 2XX status codes.
Merge pull request #70 from trhodeos/dev2

Split Uploader into multiple files. Move non-android code into a