[RenderEngine] Organize RenderEngine directory.

This patch:
1. adds proper namespace renderengine to all RenderEngine code,
   and namespace gl to all GLES related code
2. creates gl/ directory for GLES backend code
3. Reorder include header files, remove unused header files.

BUG: 112585051
Test: Build, flash, run display validation
Change-Id: I81f0b8831213607cde08562958f7c38ddaf4c9e6
diff --git a/services/surfaceflinger/RenderEngine/Android.bp b/services/surfaceflinger/RenderEngine/Android.bp
index 13752f2..f62596f 100644
--- a/services/surfaceflinger/RenderEngine/Android.bp
+++ b/services/surfaceflinger/RenderEngine/Android.bp
@@ -41,18 +41,24 @@
     name: "librenderengine_sources",
     srcs: [
         "Description.cpp",
-        "GLES20RenderEngine.cpp",
-        "GLExtensions.cpp",
         "Image.cpp",
         "Mesh.cpp",
-        "Program.cpp",
-        "ProgramCache.cpp",
         "RenderEngine.cpp",
         "Surface.cpp",
         "Texture.cpp",
     ],
 }
 
+filegroup {
+    name: "librenderengine_gl_sources",
+    srcs: [
+        "gl/GLES20RenderEngine.cpp",
+        "gl/GLExtensions.cpp",
+        "gl/Program.cpp",
+        "gl/ProgramCache.cpp",
+    ],
+}
+
 cc_library_static {
     name: "librenderengine",
     defaults: ["librenderengine_defaults"],
@@ -68,6 +74,7 @@
     ],
     srcs: [
         ":librenderengine_sources",
+        ":librenderengine_gl_sources",
     ],
     lto: {
         thin: true,