Use Promise.promisify() to remove boilerplate.

This is completely untested, and written in the GitHub editor.