Using Bacon.js streams and Q for promises.