[SysApps] Implement the Device Capabilities getDisplayInfo()

This provider is missing an Observer interface for notifications
of displays being connected and disconnected. This is very likely to
be platform dependent and we might need to add platform files.

Currently we only using a static method, but I'm keeping the GetInstance()
for the display monitoring implementation.
[SysApps] Watch for displays connections and disconnections

Using the Chromium's gfx:: abstractions on top of Screen and Display,
we can watch for new connections and disconnections in a portable way.

This patch also adds an observer interface to DisplayInfoProvider so
the DeviceCapabiltiesObject can subscribe to this events when necessary.
[SysApps] Dispatch display events to the JavaScript shim

Connect the bits from receiving a display connection/disconnection
event from the system to sending an event message to the JavaScript shim.

It is important to remember that the event is only triggered if there are
event listeners waiting for it.
[SysApps] Add a simple test for Device Capabilities

Not to self: make a browsertest out of this. :)