OpenGL on Android

This PR adds Android support to the GLSL backend. Main changes:

* Changes to GLSL codegen and backend to handle OpenGL ES correctly
* New HelloAndroidGL app which demonstrates how to use Halide for rendering to textures
* Cosmetic changes to HelloAndroid app

The standard behavior of halide_opengl_create_context() on all platforms so far is to do nothing if there is an active OpenGL context; this is also the case for the Android version. In fact, the HelloAndroidGL app demonstrates how to share the GL context between Halide and the Java activity.