Prefer Resolv::DNS to subshell and regexps

Benefits
  * support transparently both IPv6 and IPv4
  * avoid spawning a child process
  * friendlier to all Ruby VMs (especially jruby)
  * less brittle when avoiding regexps

To test the change and check that it still connects and gets block chains properly run:

`ruby -Ilib lib/bitcoin/connection.rb`

To see Resolv::DNS in action run:

`irb> require 'resolv'; Resolv::DNS.new.getaddresses('seed.bitcoin.sipa.be').map(&:to_s)`