Make GLSLShader have its own Create, Enable Disable, Dispose function
- that is not necessary for sure, but that is good for code write
Remove unnecessary prefix of CALL_GL
- these gl call should be fine, no need to add CALL_GL macro prefix
Make Enable() and Disable() of ElementOfRenderable can be call multi times for Shaders
- that is very important because if we have several Renderable share the same IA, Shader, Mesh, recall the Enable() will miss some settings for current Renderable's other ElementOfRender
Set Index Buffer (GL_ELEMENT_ARRAY_BUFFER) in Mesh's Enable(), remove the setting in Renderable's Draw
- that is better design
- Some comment be removed and add
- find some place to call Models's Disimport()
Add Texture and Sampler's Definition
- not finished yet, just some stubs
MERGE: [Bug Fix to Bind Renderable's ElementOfRenderable to it at real time]
- Why bug happens
    - If we have two Renderables share the same IA or Shader, the Scene will call Renderable's setIA or setShader at the Load time twice, then the later Renderable's IA will overwrite the previous pointer to Renderable
- How to Fix
    - remove bind when setIA, setMesh, etc
    - add new function called BindElementOfRenderableToMe() which will bind its all ElementOfRenderables to itself
    - call BindElementOfRenderableToMe() at each call to Init(), Draw(), Destory(), that is bind at Real-Time

Merge branch 'master' of https://github.com/nanayay/budding

Conflicts:
	OGLESSample_NDK/jni/gl_renderable.cpp
	OGLESSample_NDK/jni/gl_renderable.h

The Original files are stored as:
 OGLESSample_NDK/jni/gl_renderable.cpp.orig
 OGLESSample_NDK/jni/gl_renderable.h.orig