This provides a Model base class in Python and sub-classes of that
can be set as data models in slint.
The ListModel is provided as basic sub-class operating on a list() and
allowing mutation and notifying the view on the Slint side.
Similarly, an array declared in Slint is exposed as an object to Python
that looks like a Model.
Both support the sequence protocol.
Fixes#4135