implementing deftask convenience macro :dancer: