Compose (function(): Promise)es and convert callback takers to promise givers w/o all the boilerplate.