added support for an err in the onRoute method
passed the error to the step method when given to the onRoute method
added the use method, which simplifies the old 'on' method
modified to not call fns() again, and again
replaced the push call with an index into the array
removed the for each