Refactor dispatcher.

WaylandDispatcher has logic to dispatch events in single process
and multi process mode. This is fine but making it hard to
optimize/fix bugs specific to a specific mode or when in a certain
side(gpu-process/browser process).

This patch introduces WaylandDispatcherDelegate, this can be used
to customize WaylandDispatcher. The interface can be extended to
implement the necessary support.

BrowserProcessDispatcherDelegate extends WaylandDispatcherDelegate.
This implements the necessary support for dispatching events in
Browser Process.

GpuProcessDispatcherDelegate extends WaylandDispatcherDelegate
and implements the necessary support for dispatching events in
GPU Process via IPC.

There is no functional change except that one can call SetActive
to force dispatcher to ignore or accept events.