Add .data() and .errors() methods.

The data and error methods collect the data and error messages from a
list of promises, respectively. Since the composition methods only
forward lists of promises, rather than forwarding lists of data or
errors, this makes actually using data from the composed promises
less manual.