Proper queue for unvisited paths

The crawler was previously using goroutines as an infinite buffer
mechanism. Now the infinite buffer has been formalized into a proper
data structure.