GFX: Prepare to get rid of event dependencies.

GFX cannot have any dependency on events. We have lot of event dependencies
in SFO, VsyncProvider and OzoneDisplay. Now, we define the needed interface
for SFO, VsyncProvider in OzoneDisplay and this interface will be implemented
in wayland\ side.
SFO: Move EGL attributes declaration to SFO.

We currently define the EGL attributes in EGLWindow. We could do
this in SFO as they are the same for all surfaces. This CL makes
changes in this direction.
GFX: Remove dependency on Events.
Move everything under impl/ to ui/gfx/
Move everything under ui/gfx/ to gfx namespace.
Compile ui/gfx/ as part of gfx target only.
OzoneHardwareDisplay: Implement OzoneDisplay.

This patch implements OzoneHardwareDisplay in Wayland, which adds the
needed support to create/destroy widgets as needed or send the message
over IPC. This is basically the same implementation as we had in
OzoneDisplay.