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.
[Qt] Revert overviewpage from QFormLayout to QVBoxLayout
gui: remove redundant numTransactions tracking

This number was still tracked even though it's shown nowhere in the UI
anymore. It was originally removed because it didn't match the actual number of
records in the view (which contains outputs, not transactions) thus was
confusing people.
Univalue: Do not build JSON escape list at runtime

No need to waste startup time building something that can be done
at compile time.

This also resolves a clang++ warning originally reported in #4714,
univalue/univalue_write.cpp:33:12: warning: array subscript is of type 'char
escapes['"'] = "\\"";
^~~~

etc.
Merge pull request #4704

54c7df8 build: Fix boost build on some platforms (Cory Fields)
replace int with size_t in stream methods

Thus the read(...) and write(...) methods of all stream classes now have identical parameter lists.
This will bring these classes one step closer to a common interface.
build: add option for reducing exports (v2)

This was committed previously as 4975ae172 and reverted, because the flags were
applied even if the checks didn't pass. This is the same commit, fixed up to
actually disable the functionality when necessary.

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.
addrman: Do not propagate obviously poor addresses onto the network
Merge branch '2014_univalue_warn' into merge-PR4715

Merge pull request #4715
Merge pull request #4725

e432a5f build: add option for reducing exports (v2) (Cory Fields)
Merge pull request #4672

22b3c4b remove unused class CAddrMan; from db.h (Philip Kaufmann)
Merge pull request #4670

a35b55b Dont run full check every time we decrypt wallet. (Matt Corallo)
1e21c17 Make CCryptoKeyStore::Unlock check all keys. (Gregory Maxwell)
Don't reveal whether password is <20 or >20 characters in RPC

As discussed on IRC.

It seems bad to base a decision to delay based on the password length,
as it leaks a small amount of information.
Add "it works" test for bitcoin-tx
bitcoin-tx: Accept input via stdin. Add input handling to tests.
Merge pull request #4624
Merge pull request #4728 from laanwj/2014_08_rpcserver_password_delay

Don't reveal whether password is <20 or >20 characters in RPC