Allow -onlynet=onion to be used

Just an alias for onlynet=tor, but matches the new name
of the proxy option -onion= better.
Add IsReachable(net) function

Allows other parts of the program to query for reachable
status of a network. Similar to IsLimited(net).
Add GetNetworkName function

Returns the network name for an Network enum.
Add a way to limit deserialized string lengths

and use it for most strings being serialized.
remove unused class CAddrMan; from db.h
Make CCryptoKeyStore::Unlock check all keys.

CCryptoKeyStore::Unlock has a loop to attempt decrypting each key which
 only executes once, likely due to a simple mistake when the code was
 originally written.

This patch fixes the behavior by making it check all keys. It also adds
 a fatal assertion in the case some decrypt but some do not, since that
 indicates that the wallet is in some kind of really bad state.

This may make unlocking noticeably slower on wallets with many keys.
Dont run full check every time we decrypt wallet.
build: Fix boost build on some platforms

When the libpath doesn't line up with the value from config.sub, we don't find
the correct path to boost's libs. This adds a hack to try another path before
giving up.

Should close #3219.
build: add option for reducing exports

Enabled automatically if boost >= 1.49.
See: https://svn.boost.org/trac/boost/ticket/2309

Also, check for a default visibility attribute, so that we can mark future
api functions correctly.
depends: fix shasum on osx < 10.9

Shasum verification from stdin doesn't work there, so we write to a file
instead.

Formatted a bit too.
build: add funcs.mk to the list of meta-depends

If anything in funcs.mk changes, everything must rebuild
Changed LevelDB cursors to use scoped pointers to ensure destruction when going out of scope.

This corrects a bug where an exception thrown reading from the database causes the cursor to
be left open, which causes an assertion error to occur when the database is deleted (around
line 938 of init.cpp).
Merge pull request #4663

4975ae1 build: add option for reducing exports (Cory Fields)
devtools: Exclude default exports from symbol-checker script

See discussion in #4663.
Merge pull request #4656

5cbda4f Changed LevelDB cursors to use scoped pointers to ensure destruction when going out of scope. (Ross Nicoll)
build: Add --with-utils (bitcoin-cli and bitcoin-tx, default=yes).
Help string consistency tweaks. Target sanity check fix.
Merge pull request #4711

c101c76 build: Add --with-utils (bitcoin-cli and bitcoin-tx, default=yes). Help string consistency tweaks. Target sanity check fix. (randy-waterhouse)
Merge pull request #4709

e42363d build: add funcs.mk to the list of meta-depends (Cory Fields)
1910910 depends: fix shasum on osx < 10.9 (Cory Fields)
Merge pull request #4655

216e9a4 Add a way to limit deserialized string lengths (Pieter Wuille)
doc: Remove outdated information about boost versions

Bitcoin core should work with any remotely recent boost version
if a proper build environment is present. Remove a confusing comment
from the build documentation.