migrate relative time handling to a directive

A directive can be reevaluated repeatedly while a filter is only triggered on data changes (like the original assignment).
tweak directives