Cleaning up WebRequest::GetResponse - doesn't peg CPU

Refactored this a bit, now that I understand it better. It uses
curl_multi_select to block on pending requests rather than spinning a loop
(which should prevent 100% CPU usage). It also returns the response early when
it's retrieved (which it did before but I'm not sure that it did in my patch).
Merge pull request #12 from rmasters/fix/getresponse

Cleaning up WebRequest::GetResponse - doesn't peg CPU