Abstracted functionality for shaders.

* Added a vertex/fragment pair into text files (Although it is not necessary, it can still be written as a static string)
* Made shader abstract and a base part of any shader.
* Expanded ShaderUtil.java with methods for extracting qualifier strings from a gl program.
* Added SimpleTextureShader.java which does what it says, shades an object with a texture.
* Both triangle and square now works fine using the same super classes.
* Added GeneralUtil.java (Will be renamed) which provides functionality such as loading a file form assets as a String
convenient for shaders.
*
Updated Qualifier stream to be more automatic and try to catch user errors.

* Updated naming conventions for samplers to conform to what can be considered standard.
* Generalized ShaderUtil further.
* Converted static integerss to an enum.
* Introduced GLQualifier.java which saves information related to glsl shader qualifiers. If we are interested in the opengl qualifier or type.
* Made Qualifier immutable.
* QualifierFactory.java now can create GLQualifier.java as well.
* QualifierFactory.java also houses a Qualifer mapper. Between the variable names and the internally defined enum.
* Moved shader string loading into app.
* Updated Texture and TextureFactory.java and these should now be able to be used. Although need further testing for multiple textures.
Added Cube as a new type of mesh, which also features texture coordinates.

* Updated naming of sampler in texture to uTexture.
* Updated vertex shader with position being 3D since that is all the data we are sending.
* Optimized Shader to use array instead of ArrayList for qualifiers.
* bind is abstract in Mesh
* Qualifier.java changed signature of constructor
* Added QualifierUtil.java which counts different statistics for a list of qualifiers.
* CommonRenderer.java Fixed bug with clear color not being set properly.
* Optimized rendering loop by removing one matrix multiplication that is pre-multiplied instead.
* Expanded PerFrameParams.java with viewProjMatrix.
* Added interface for expand of TextureFactory, not yet implemented though.
* GLESUtil.java Added methods for translating a GL_Error to readable text.
* Camera.java Added pre-multiplication of view-projection matrix.
* Expanded GL2SurfaceView.java view touch interaction, so that the user can rotate the object that is shown.