simple priority queue.
add some better debugging output.
one more priority queue test.
move the trampoline work queue to a priority queue, with priority given to deepness, which should exhaustively search left choices before moving on.
split out debugger and trampoline. make debugger take a function so it can be lazy'd.
move ParserState into its own file.
Merge branch 'pq'
2.1.0