Allow either/all of:
 * contents (template)
 * args (template parameters)
 * result from a template
to be promises.