added support for computing cluster and group variances, as well as the update rules within the node class