Some async functions ported to bluebird promises