Use new promise-based step stream. Streams use promises to manage
asynchronous iteration and backpressure, and also understand ES6
iterables/iterators.

Reduced API for initial version, but can be expanded as necessary.

Remove direct dependency on when.js-proper. Code depends on Promise
now, but explicitly loads when/es6-shim/Promise because the
performance of node's Promise on 0.11 is unacceptable.
Synthesize iterable wrapper for iterators. Add periodic, delay, and
debounce. Add scheduler. Remove unused Queue and Subscribable for now,
they may return later if/when we need them.

Finish jsdoc for all public Stream methods. Fix Queue and defer, move
Subscribable to separate module for now until we find a proper home
for it. Add simple README
Ensure that delay propagates End. Add delay test and test scheduler
Add unit tests for periodic and delay. Make periodic emit current tick value
Add unit tests for empty, head, tail, startWith, repeat, and scan
Add travis config
Add unit tests for from, fromPromise, and unfold
Add unit tests for debounce. Scheduler fix.
Add unit tests for binary search. Update jsdoc
Merge pull request #14 from cujojs/new-promise-stream

Use new promise-based step stream