TextureAtlas - ETC1 compression with transparency

This adds a few of things:

1. Support for `outputFormat: etc1` to the `TexturePacker`.
2. An additional packer property `maskFormat: none / png / jpg / etc1` to export the alpha channel as a separate assset.
3. Support for loading and rendering masked textures.

Main drawback of etc1 is lack of support for transparency but there are some [workarounds]( http://malideveloper.arm.com/develop-for-mali/sample-code/etcv1-texture-compression-and-alpha-channels). Methods 2 & 3 from the article are currently implemented.

At runtime, the mask gets loaded automatically along with the main texture. The two textures are wrapped into a `CompositeTexture` and bound to different texture units. The only requirement on the user's part is to apply the `MaskShader` which mixes color with mask alpha. Please see the included test.

In practice:

* assets that need transparency but don't compress well as png can now be stored in a lossy format. My app size dropped around 3x.
* vram savings:
  - 6x from RGB888 to ETC1_RGB8
  - 4x from RGBA8888 to (ETC1_RGB8 + ETC1_RGB8)
  - 2.6x from RGBA8888 to (ETC1_RGB8 + LUMINANCE)

P.S. sorry for Luminance hack, I try not to touch native gdx2d

Well, the line-based format is somewhat easier (don't need a JSON lib) and cheaper (parser also interprets the values, so don't need `JsonValue` to hold values) to parse than JSON. The line-based parser assumes the number and order of the fields, if it used the field name (as you have done) then it wouldn't be so bad. JSON would be fine too, but not sure it's worth the change. Someone sent a PR for it a while ago, but the changes were extensive and didn't get merged.