remove the unnecessary goroutine from Selector.Do
remove the unnecessary goroutine from Selector.Do

As correctly pointed out by Yujie Xia, the extra goroutine synchronously
communicated with the main goroutine via a simple channel, so an error
return can be used instead. This simplifies the code and reduces
unnecessary work.

While at it, collapse Selector.run into Selector.Do, as the wrapper
became just five lines. Throw away the wrapper's godoc in favor of the
other, as it's much more complete.

Fixes #423.

chromedp/chromedp,chromedp/chromedp,knq/chromedp,chromedp/chromedp,knq/chromedp,knq/chromedp