Introduce API for handling cgroups
A model is exposed that groups processes by cgroup and provides grouped information.
The model can be started and stopped and can be set to follow a given root. All system units, all users, or a specific slice within that.
Information for all pids is calcuated totalled and included via the ProcessAttribute helpers.
Cgroups are set to handle applications that follow https://systemd.io/DESKTOP_ENVIRONMENTS for grouping of applications. A convenience model ApplicationDataModel subclass exposes this directly.
The exposed model is a 1:1 mapping of ProcessDataModel for easy drop-in.