Call a Node callback style function and return a Promise