Add paging and streaming functionalities

This introduces a `nextPage` method in the result that is passed back
from the promise. This way, we can get the next page by doing a
straight call to `nextPage()` on the resulting data.

In addition to `nextPage`, we can now stream content from the result.
Transforming the result into a stream will lazily load all of the
paginated data until `endMarketoStream()` is called on the stream
itself.