rework help messages for fee-related options

- mention the units and show the default for -paytxfee
[Qt] New status bar Unit Display Control and related changes.

- New status bar control shows the current Unit of Display.
  When clicked (left,or right button) it shows a context menu
  that allows the user to switch the current Unit of Display (BTC, mBTC, uBTC)
- Recent Requests and Transaction Table headers are now updated when
  unit of display is changed, because their "Amount" column now displays the
  current unit of display.
- Takes care of issue #3970 Units in transaction export csv file.
- Small refactors for reusability.
- Demo Video https://www.youtube.com/watch?v=wwcr0Yh68go&list=UUG3jF2hgofmLWP0tRPisQAQ
- changes after Diapolo's feedback. Have not been able to build after last pool, issues with boost on MacOSX, will test on Ubuntu these changes.
- removed return statement on switch
- renamed onDisplayUnitsChanged(int) to updateDisplayUnit(int)
- now getAmountColumnTitle(int unit) takes a simple unit parameter. moved to BitcoinUnits.
small cleanup of #ifdefs in BindListenPort()

- SO_NOSIGPIPE isn't available on WIN32 so merge the 2 non-WIN32 blocks
- use predefined names from header for IPV6_PROTECTION_LEVEL and
  PROTECTION_LEVEL_UNRESTRICTED
add missing BOOST_FOREACH indentation in ThreadSocketHandler()
add OpenSSL RAND_cleanup() on OpenSSL shutdown

- to securely erase the memory used by the PNRG
- also rework 2 comments in OpenSSL init
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>
http to https, 2013 to 2014
Merge pull request #4397

5d59921 add missing BOOST_FOREACH indentation in ThreadSocketHandler() (Philip Kaufmann)
9e9ca2b small cleanup of #ifdefs in BindListenPort() (Philip Kaufmann)
fix copyright string in two of our *.rc files

- also make comment about rc-files in clientversion.h generic

Merges #4429.
typedef std::map<uint256, CCoins> to CCoinsMap

This makes it possible to switch to a more efficient map type
without changing all occurences manually.

Merges half of #4413.
Merge pull request #4447

9a6497e http to https, 2013 to 2014 (Trevin Hofmann)
Merge pull request #4325

4aaa017 rework help messages for fee-related options (Philip Kaufmann)
qt: Log messages with type>QtDebugMsg as non-debug

More important messages should end up in the log no matter
if -debug=qt is set.
qt: Change serious messages from qDebug to qWarning

By changing the logging stream for warnings from qDebug to qWarning,
these will always be logged to debug.log.
Merge pull request #4448 from laanwj/2014_07_qt_payment_rq_logging

qt: Always log warning/error messages to debug.log
secp256k1: add libtool as a dependency
secp256k1: Add build-side changes for libsecp256k1

Note: This is added to our existing automake targets rather than as a
libtool-style lib. The switch to libtool-style targets can come later if it
proves to not add any complications.
libsecp256k1 integration
Clean up release-process.md after OS X gitian changes

This is PR #4271, but with the changes to the descriptors, both the names of the
files and the names of the intermediate build artifact archives, removed.
This also closes #3775 if it goes in, because it covers the changes in
that PR.
Check signatures before respend relay

Check that all inputs are completely valid before actually
relaying a double-spend.