Cherry-pick: gpu: Expose GLFence impls

Clean cherry-pick of chromium r279621

Original description:

Move implementations to their own header+source files.

Then specifically use EGL_KHR_fence_sync implementation for
mailbox synchronizing because it's the only one working across
contexts and share groups.

Change-Id: I49b2d17acd2af3980351239c04143b1d50e6e296
24 files changed