Create inital Android build script from the Java one
Copy and tweak behavior from base JVM for Android

Use the base JVM behavior to build with gradle or maven. On the gradle
side, which I'm have more experience, I call also `connectedCheck` task.
This task is the official task to run tests on emulator[1]. I still
maintained the current `check` task for the case of projects with
multiple modules where some of them uses pure java code.

As I'm not sure about ant, I've dropped out.

[1]: http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Android-tasks
Android builds support gradle wrapper
Install Android SDK components on android builder setup

The current commit wraps the common command pattern to install one sdk
component. It assumes that we have the `android` command installed and
on PATH.

Also, it uses the `sdk_components` configuration key to fetch the list
of components to install.

A set of default components is given, and they are the most recent ones
at the date of this commit.
Test the sdk installation for android builder
Use spawn/expect to accept the android license agreements

Changes in android sdk makes the old `echo y | ...` format not work
anymore. Thanks @gildegoma for the new trick :v:
Update android tools
Move android installation fold to upper level

As pointed out by @henrikhodne the previous implementation could not
work with Travis log viewer.
Move Android dependencies announce to inside installation fold
Add basic ant support for android builder

Try to support ant builds, using the android ant tasks described in the
official documentation[1]:

- `debug` to build the test project and target
- `installt` to install test and target projects
- `test` to run tests on previously installed test applications

[1]: http://developer.android.com/tools/building/building-cmdline.html#AntReference
Merge pull request #161 from andrewhr/ar-android-build

Basic Android builder