Removed delcaration of named parameters.
Replace `this` with `null` in calls to `apply`.
Whitespace tidy.
Add `say` and `die`.
Reset `invocation` immediately.

Reset `invocation` immediately so we can track the order of declaration
of our step callbacks.
Remove duplicate function parameter.
New ordering semantics.

New ordering semantics. Now, if you want to have a callback that is
called more than once, you must specify that it is arrayed. You must
also declare an arity for the callback. Arity cannot be inferred because
there may be nothing to infer from.

Without specifying that a callback is arrayed, there is no way to
determine when the callback is finished. The logic that attempted to
infer the meaning of multiple callbacks was convoluted and full of
surprises.

There is still a use for invoking the same callback multiple times and
having the results gathered into an array, but the use of multiple
invocations of `step` appears to have been too magical. I eliminated it
having forgotten about this particular use case, and when I program with
Cadence it never occurs to me to gather in this way.

No more declaration of names using `step`.

Flattening is on the way out.

Closes #58.

File                             Raw         Min         Zip     Min/Zip
index.js                 16087/15.71  5173/05.05  4594/04.49  2046/02.00
Removed `EventInterceptor`.

File                             Raw         Min         Zip     Min/Zip
index.js                 14651/14.31  4601/04.49  4226/04.13  1856/01.81
Remove flattening of calls to `cadence`, `step`.
Remove `parallelize`.
Remove empty array check.
Merge branch `order` into `master`.