switch to async.forever