promises

custom promises like is changed with q.js promises.