wayland/inputs: Change WaylandCursorData constructor and destructor

It was using a funny "static WaylandCursorData" via Initialize() and
now I've changed it for using the more conventional way through the
class name constructor. Also Clear() was dropped in favor to the
destructor.

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>

The patch was imported from https://github.com/tiagovignatti/ozone-wayland/
as of commit id 5bfabfad130b639b4215e57c11acccd003d4c429.

Change had fixed the crash associated with WaylandCursor
deletion but has a potential for memory leak. These changes
ensure that only one instance of CursorData is created.

Signed-off-by: Kalyan Kondapally <kalyan.kondapally@intel.com>
Add SetGeometry API for DesktopScreenWayland.

Geometry of screen is needed for various api calls. Instead of having to
convert it from Display spec everytime, we can cache it locally. The
patch adds SetGeometry api, which can be used by Display to set the
geometry every time OutputSize changes.

Signed-off-by: Kalyan Kondapally <kalyan.kondapally@intel.com>

The patch was imported from https://github.com/kalyankondapally/ozone-wayland/
as of commit id e5c1b62be1e21cd3b8d0c78072f387e72816da5e.

Rebase to latest Master branch.

The patch was imported from https://github.com/tiagovignatti/ozone-wayland/
as of commit id bdccfdeadc3d45e4e2b974cd3fe2c8b9e0df0a6e.

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
impl: Move ValidateLaunchType() to the very beginning of OzoneDisplay

Doing this we can use for other purposes that happen before
InitializeHardware() is called.

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>

The patch was imported from https://github.com/tiagovignatti/ozone-wayland/
as of commit id 7d7661edb00539d25d6bc44359a18872974328bb.

Setting Instance to this should be done before anything else.

Signed-off-by: Kalyan Kondapally <kalyan.kondapally@intel.com>