Enhance ScreenController & the DisplayConfigurationPolicy to implement dynamic grid units.
- Rename ScreenController to ScreenModel, as it just reflects current screen state, does not offer means to configure it - ScreenController can update state of existing Screens, based on Mir DisplayConfiguration changes. - Expand Screen to include scale & form factor properties, with getter/notifier in NativeInterface. This enables the dynamic grid units in the shell - Add a Unity.Screens qml module to give QML better information about connected screens, and allow basic reconfiguring. - Implement a basic display configuration policy to set suitable scale and form factor on an external display (needed for dynamic grid units) Fixes: #1573532 Approved by: Unity8 CI Bot, Daniel d'Andrada