1.2.2: refactoring, added %grouping (a la Dated) and optimizations for darken (incl %new vs funct)