remove dependency on async, just rely on grunt.util.async