End state(s) must now be explicitly specified.

Previous versions allowed any input stream that stayed within the
boundaries of the state machine to pass when there are no remaining
input elements.
Example: '(c a d) would pass although the "end" state was never reached.
"cad" is not a valid permutation of car/cdr, it should fail as the input
stream did not contain an "r" in the proper position, which would move
the machine to the end state.

The mktn funciton now checks if accept is a transition and expands
accordingly to let the enclosing case block pass when the input stream
is empty at that transition's state.