Add a FunctionsGL class for loading GL entry points.

BUG=angle:879

Change-Id: I35384f078d2ed86a6c72cc243753b56bc58617b0
Reviewed-on: https://chromium-review.googlesource.com/250390
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/renderer/gl/RendererGL.cpp b/src/libANGLE/renderer/gl/RendererGL.cpp
index e96622f..ddb2d47 100644
--- a/src/libANGLE/renderer/gl/RendererGL.cpp
+++ b/src/libANGLE/renderer/gl/RendererGL.cpp
@@ -15,6 +15,7 @@
 #include "libANGLE/renderer/gl/FenceNVGL.h"
 #include "libANGLE/renderer/gl/FenceSyncGL.h"
 #include "libANGLE/renderer/gl/FramebufferGL.h"
+#include "libANGLE/renderer/gl/FunctionsGL.h"
 #include "libANGLE/renderer/gl/ProgramGL.h"
 #include "libANGLE/renderer/gl/QueryGL.h"
 #include "libANGLE/renderer/gl/RenderbufferGL.h"
@@ -26,9 +27,12 @@
 namespace rx
 {
 
-RendererGL::RendererGL()
-    : Renderer()
-{}
+RendererGL::RendererGL(const FunctionsGL *functions)
+    : Renderer(),
+      mFunctions(functions)
+{
+    ASSERT(mFunctions);
+}
 
 RendererGL::~RendererGL()
 {}