OzoneDisplayChannelHost: Add support for observing ChildProcessHost.

This CL adds necessary support in OzoneDisplayChannelHost to observe for new
child process host connections. We rely on this to establish a Channel Connection.
We already have similar support in OzoneChildProcessObserver class, but it seems
un-necessary as this information is very much internal to OzoneDisplayChannelHost.
OzoneChildProcessObserver will be removed in a follow up patch.
Remove ChildProcessObserver.
OzoneDisplayChannelHost: Make EstablishChannel API private.

We try to EstablishChannel in OzoneDisplay immediately after constructing
the OzoneDisplayChannelHost. This patch makes the call implicit by adding it in
constructor. This also gives us a chance to remove few un-necessary API in
OzoneDisplay.
OzoneDisplay: Remove EstablishChannel and OnChannelHostDestroyed API.

Now, All the channel connection is internal to OzoneDisplayChannelHost. The
above mentioned API don't add any additional functionality, thus this CL
gets rid of them.
IPC: Remove WaylandMsg_DisplayChannelEstablished message.

Previously, we used this message as a means to inform GPU process that
Browser process has received it's initial Message. We no longer depend
on this and hence it is removed.
WaylandDisplay: Remove OzoneDisplay as Friend Class.

We have OzoneDisplay as Friend Class for WaylandDisplay and give access
to WaylandDisplay private functions. This doesn't look clean, CL fixes
this by making relevant private functions as public and removing the Friend
relationship. Most of the changes are more code re-arrangement to follow the
coding style guideline.