changed promise lib to bluebird