Fix cadence return values.

The cadence was not returning the correct return values. With the hidden
context there was different logic for invoking user provided callback
than for invoking the next step. Now I just give the arguments that
would have gone to the next step to the user callback.

Closes #76.