Fixed bug in forever running solving.

The issue was that when faced with a puzzle with multiple solutions, the
solver would run forever. My mistake was in the goroutines and channel.
I was making a new channel every time search() was called and a new
goroutine in every iteration of the last for loop in search(). The
answer would never end up returning.