Final batch (really) of converting callback APIs to work as promise APIs.