npm module: like Promise.cast with a delay