Modern kernels have the ability to schedule groups of processes instead of just individual ones, meaning that you can get a more fair distribution between e.g. users. It needs help creating these groups though so we should consider creating a new one for each session we start.
Some interesting info: http://www.webupd8.org/2010/11/alternative-to-200-lines-kernel-patch.html http://fedoraproject.org/wiki/Features/ControlGroups
Might not be needed anymore. systemd automatically does this via pam_systemd.
Here is an example of when pam_systemd isn't working well enough with ThinLinc. https://github.com/bjorn-fischer/fss-tools
See bug 44 and bug 7304 which has variations on this theme.