Use async name resolving to improve net thread responsiveness

In the LookupIntern(), things changed are:

  1. Call getaddrinfo_a() instead of getaddrinfo() if available, the former is a sync version of the latter;
  2. Try using inet_pton()/inet_addr() to convert the input text to a network addr structure at first, if success the extra name resolving thread inside getaddrinfo_a() could be avoided;
  3.  An interruption point added in the waiting loop for return from getaddrinfo_a(), which completes the improve for thread responsiveness.

A easy way to see the effect is to kick off a 'bitcoind stop' immediately after 'bitcoind -daemon', before the change it would take several, or even tens of, minutes on a bad network situation to wait for the running bitcoind to exit, now it costs only seconds.

Signed-off-by: Huang Le <4tarhl@gmail.com>
Check signatures before respend relay

Check that all inputs are completely valid before actually
relaying a double-spend.
Remove signal DoubleSpendDetected, use function

Also removes the need for forward reference to RelayableRespend.
Show nodeid instead of addresses (for anonymity) unless otherwise requested.
Merge pull request #4450

0da6b3f Remove signal DoubleSpendDetected, use function (Tom Harding)
88dd359 Check signatures before respend relay (Tom Harding)
Merge pull request #3764

2e36866 Show nodeid instead of addresses (for anonymity) unless otherwise requested. (R E Broadley)
Add libtool generated files to .gitignore
Merge pull request #4421

caf6150 Use async name resolving to improve net thread responsiveness (Huang Le)
Fee fixes