Use empty() instead of size() to check if a list is empty.

Using empty() instead of size() can be faster as size() can take
linear time but empty() is guaranteed to take constant time.
DisplayChannelHost: set_unblock true while sending IPC messages.

Clear the unblock flag as GPU Process never sends a synchronous message.
This helps preserve order by treating messages sent by DisplayChannelHost
as synchronous one.
Use const function pointers as applicable.
Remove un-necessary friend class declarations.
Ensure all member variables are initialized properly.
Initialize base class constructors when one is explicitly defined.
OzoneDisplay: Change return type of CreateWidget.

CreateWidget is responsible for creating a new WaylandWindow.
It constructs a new WaylandWindow and returns it. The return
value is ignored by the caller, this CL makes the return type
as void.
Cursor: Remove un-necessary private member variables.

Intention seems to cache the cursor type but we never really cached
it. This CL removes them as the cursor needs to get updated every
time it enters a window.
Cursor: Use Vector to manage different cursor types.
MemoryLeak: Clear the content of Vector.

In RWHDW, we delete the vector but not the memory occupied by the
content of vector. This CL fixes it.