Implements call

Implements call as discussed in #153. 

Still open to discussion (naming?), but here's a proposal and some docs.

Maybe change the argument name from `next` to `push` to reflect the standard Highland name for the callback function? I got confused for a second here. Same in the `call - ArrayStream` and `call - GeneratorStream` tests.