User modelling algorithms and supporting utils.